From 1c4d1b54cdfe94beeb0b03d72d9ba589be1b0940 Mon Sep 17 00:00:00 2001 From: Banjo Kazooie Date: Thu, 16 Feb 2023 13:21:40 -0600 Subject: [PATCH] document various assets, bsStoredState.c, and stateTimers.c --- decompressed.us.v10.yaml | 36 +- include/SnS.h | 2 +- include/bs_funcs.h | 4 +- include/core2/statetimer.h | 27 + include/enums.h | 680 +++++++++++++----- include/functions.h | 16 +- include/structs.h | 4 +- src/BGS/ch/code_8A60.c | 10 +- src/BGS/ch/mudhut.c | 13 +- src/BGS/code_3420.c | 2 +- src/FP/ch/bearcub.c | 6 +- src/FP/ch/present.c | 2 +- src/FP/racectrl.c | 8 +- src/GV/ch/histup.c | 14 +- src/GV/code_3630.c | 10 +- src/GV/code_3B10.c | 8 +- src/GV/code_3D90.c | 12 +- src/GV/code_43B0.c | 4 +- src/GV/code_4740.c | 2 +- src/GV/code_5570.c | 6 +- src/MM/ch/conga.c | 4 +- src/MM/ch/grublin.c | 18 +- src/MM/ch/hut.c | 20 +- src/MM/ch/lmonkey.c | 38 +- src/MMM/ch/motzhand.c | 6 +- src/MMM/ch/napper.c | 6 +- src/SM/ch/vegetables.c | 2 +- src/TTC/ch/blubber.c | 10 +- src/TTC/ch/clam.c | 18 +- src/TTC/ch/lockup.c | 10 +- src/TTC/ch/nipper.c | 12 +- src/core2/ba/marker.c | 22 +- src/core2/ba/model.c | 4 +- src/core2/bs/ant.c | 8 +- src/core2/bs/bBarge.c | 2 +- src/core2/bs/bFlap.c | 4 +- src/core2/bs/bFlip.c | 8 +- src/core2/bs/bFly.c | 26 +- src/core2/bs/bLongLeg.c | 78 +- src/core2/bs/bPeck.c | 2 +- src/core2/bs/bShock.c | 8 +- src/core2/bs/bSwim.c | 16 +- src/core2/bs/bTrot.c | 44 +- src/core2/bs/bWhirl.c | 8 +- src/core2/bs/bbuster.c | 2 +- src/core2/bs/carry.c | 3 +- src/core2/bs/climb.c | 2 +- src/core2/bs/croc.c | 14 +- src/core2/bs/crouch.c | 8 +- src/core2/bs/die.c | 2 +- src/core2/bs/dronegoto.c | 2 +- src/core2/bs/dronexform.c | 2 +- src/core2/bs/jig.c | 8 +- src/core2/bs/jump.c | 2 +- src/core2/bs/ow.c | 2 +- src/core2/bs/slide.c | 4 +- src/core2/bs/splat.c | 2 +- src/core2/bs/stand.c | 17 +- src/core2/bs/swim.c | 12 +- src/core2/bs/throw.c | 5 +- src/core2/bs/timeout.c | 2 +- src/core2/bs/turn.c | 4 +- src/core2/bs/twirl.c | 2 +- src/core2/bs/walk.c | 14 +- src/core2/bsStoredState.c | 61 ++ src/core2/ch/beehive.c | 4 +- src/core2/ch/{collectable.c => collectible.c} | 50 +- src/core2/{code_440B0.c => ch/crab.c} | 180 ++--- src/core2/{code_D7D10.c => ch/gravestone.c} | 18 +- src/core2/ch/jigsawdance.c | 24 +- src/core2/ch/jinjo.c | 77 +- src/core2/ch/mole.c | 48 +- src/core2/{code_49A70.c => ch/shrapnel.c} | 27 +- src/core2/{code_D7040.c => ch/termite.c} | 107 ++- src/core2/ch/trainers.c | 11 +- src/core2/ch/wadingboots.c | 17 +- src/core2/code_10CD0.c | 9 +- src/core2/code_11660.c | 8 +- src/core2/code_13900.c | 61 -- src/core2/code_14420.c | 53 +- src/core2/code_16010.c | 6 +- src/core2/code_16C60.c | 8 +- src/core2/code_39D0.c | 5 +- src/core2/code_4A6F0.c | 76 +- src/core2/code_509D0.c | 134 ++-- src/core2/code_59780.c | 4 +- src/core2/code_7060.c | 23 +- src/core2/code_73640.c | 4 +- src/core2/code_956B0.c | 2 +- src/core2/code_9A740.c | 6 +- src/core2/code_9A9D0.c | 5 +- src/core2/code_A6E0.c | 65 -- src/core2/code_ABC00.c | 2 +- src/core2/code_AD110.c | 8 +- src/core2/code_B62B0.c | 10 +- src/core2/code_BEF20.c | 18 +- src/core2/code_C0E0.c | 2 +- src/core2/code_CC1E0.c | 2 +- src/core2/code_D89E0.c | 16 +- src/core2/code_D9B0.c | 5 +- src/core2/code_E910.c | 31 +- src/core2/code_EF50.c | 10 +- src/core2/gc/pauseMenu.c | 2 +- src/core2/mapModel.c | 258 +++---- src/core2/spawnqueue.c | 32 +- src/core2/statetimer.c | 64 ++ src/lair/code_86F0.c | 2 +- 107 files changed, 1649 insertions(+), 1255 deletions(-) create mode 100644 include/core2/statetimer.h create mode 100644 src/core2/bsStoredState.c rename src/core2/ch/{collectable.c => collectible.c} (71%) rename src/core2/{code_440B0.c => ch/crab.c} (63%) rename src/core2/{code_D7D10.c => ch/gravestone.c} (95%) rename src/core2/{code_49A70.c => ch/shrapnel.c} (95%) rename src/core2/{code_D7040.c => ch/termite.c} (66%) delete mode 100644 src/core2/code_13900.c delete mode 100644 src/core2/code_A6E0.c create mode 100644 src/core2/statetimer.c diff --git a/decompressed.us.v10.yaml b/decompressed.us.v10.yaml index cf847373..8fb91a2f 100644 --- a/decompressed.us.v10.yaml +++ b/decompressed.us.v10.yaml @@ -519,7 +519,7 @@ segments: - [0xF5F260, c, code_9900] #DONE - [0xF5F530, c, code_9BD0] #DONE - [0xF5FF60, c, code_A600] #DONE - - [0xF60040, c, code_A6E0] #DONE + - [0xF60040, c, statetimer] #DONE - [0xF602C0, c, code_A960] #DONE - [0xF603C0, c, ba/model] #DONE - [0xF60FB0, c, code_B650] #DONE @@ -553,7 +553,7 @@ segments: - [0xF68890, c, code_12F30] - [0xF68FD0, c, bsList] #DONE - [0xF690E0, c, code_13780] #DONE - - [0xF69260, c, code_13900] #DONE + - [0xF69260, c, bsStoredState] #DONE - [0xF69360, c, code_13A00] #DONE - [0xF69920, c, code_13FC0] #DONE - [0xF69D80, c, code_14420] #DONE @@ -658,14 +658,14 @@ segments: - [0xF99160, c, code_43800] #DONE - [0xF993A0, c, code_43A40] #DONE - [0xF99630, c, mapspecificflags] #DONE - - [0xF99A10, c, code_440B0] #DONE + - [0xF99A10, c, ch/crab] #DONE - [0xF9AC70, c, code_45310] #DONE - [0xF9C240, c, ch/code_468E0] #DONE - [0xF9C520, c, ch/jinjo] #DONE - [0xF9D1B0, c, ch/beehive] #DONE - [0xF9D530, c, code_47BD0] #DONE - [0xF9EED0, c, ch/soundsource] #DONE - - [0xF9F3D0, c, code_49A70] #DONE + - [0xF9F3D0, c, ch/shrapnel] #DONE - [0xF9FD80, c, ch/gloop] #DONE - [0xFA0050, c, code_4A6F0] #DONE - [0xFA16D0, c, code_4BD70] #DONE @@ -678,7 +678,7 @@ segments: - [0xFA6330, c, code_509D0] #DONE - [0xFA7100, c, code_517A0] #DONE - [0xFA72B0, c, code_51950] #DONE - - [0xFA75F0, c, ch/collectable] #DONE + - [0xFA75F0, c, ch/collectible] #DONE - [0xFA7BF0, c, ch/mole] #DONE - [0xFA8F30, c, ch/molehill] #DONE - [0xFA9370, c, code_53A10] #DONE @@ -881,8 +881,8 @@ segments: - [0x102B930, c, code_D5FD0] #DONE - [0x102BAE0, c, code_D6180] #DONE - [0x102BF60, c, code_D6600] #DONE - - [0x102C9A0, c, code_D7040] #DONE - - [0x102D670, c, code_D7D10] #DONE + - [0x102C9A0, c, ch/termite] #DONE + - [0x102D670, c, ch/gravestone] #DONE - [0x102E340, c, code_D89E0] - [0x102F700, c, ch/whipcrack] #DONE - [0x102FD00, c, code_DA3A0] #DONE @@ -956,14 +956,14 @@ segments: - [0x10358C0, .data, code_43800] - [0x10358F0, .data, code_43A40] - [0x10359D0, .data, mapspecificflags] - - [0x10359E0, .data, code_440B0] + - [0x10359E0, .data, ch/crab] - [0x1035B00, .data, code_45310] - [0x1035B30, .data, ch/code_468E0] - [0x1035B80, .data, ch/jinjo] - [0x1035C90, .data, ch/beehive] - [0x1035CE0, .data, code_47BD0] - [0x1035D10, .data, ch/soundsource] - - [0x1035D90, .data, code_49A70] + - [0x1035D90, .data, ch/shrapnel] - [0x1035E00, .data, ch/gloop] - [0x1035E60, .data, code_4A6F0] - [0x1035F00, .data, code_4BD70] @@ -976,7 +976,7 @@ segments: - [0x1036520, .data, code_509D0] - [0x1036630, .data, code_517A0] - [0x1036660, .data, code_51950] - - [0x10366D0, .data, ch/collectable] + - [0x10366D0, .data, ch/collectible] - [0x1036740, .data, ch/mole] - [0x10367D0, .data, ch/molehill] - [0x1036840, .data, code_53A10] @@ -1102,8 +1102,8 @@ segments: - [0x1041770, .data, code_D5FD0] - [0x10417F0, .data, code_D6180] - [0x1041870, .data, code_D6600] - - [0x10418E0, .data, code_D7040] - - [0x1041950, .data, code_D7D10] + - [0x10418E0, .data, ch/termite] + - [0x1041950, .data, ch/gravestone] - [0x1041A60, .data, code_D89E0] - [0x1041AD0, .data, ch/whipcrack] - [0x1041B00, .data, code_DA3A0] @@ -1222,12 +1222,12 @@ segments: - [0x1044E30, .rodata, code_42CB0] - [0x1044E40, .rodata, ch/trainers] - [0x1044E50, .rodata, code_43800] - - [0x1044E60, .rodata, code_440B0] + - [0x1044E60, .rodata, ch/crab] - [0x1044EB0, .rodata, code_45310] - [0x1044F30, .rodata, ch/jinjo] - [0x1044FA0, .rodata, ch/beehive] - [0x1044FB0, .rodata, code_47BD0] - - [0x1045010, .rodata, code_49A70] + - [0x1045010, .rodata, ch/shrapnel] - [0x1045030, .rodata, ch/gloop] - [0x1045040, .rodata, code_4A6F0] - [0x10450F0, .rodata, code_4C020] @@ -1352,8 +1352,8 @@ segments: - [0x1048220, .rodata, code_D5D10] - [0x1048230, .rodata, code_D6180] - [0x1048240, .rodata, code_D6600] - - [0x1048280, .rodata, code_D7040] - - [0x10482F0, .rodata, code_D7D10] + - [0x1048280, .rodata, ch/termite] + - [0x10482F0, .rodata, ch/gravestone] - [0x1048390, .rodata, code_D89E0] - [0x10483C0, .rodata, code_D89E0] - [0x1048430, .rodata, ch/whipcrack] @@ -1377,7 +1377,7 @@ segments: - [0x1048560, .bss, code_9900] - [0x1048560, .bss, code_9BD0] - [0x1048560, .bss, code_A600] - - [0x1048560, .bss, code_A6E0] + - [0x1048560, .bss, statetimer] - [0x1048560, .bss, ba/model] - [0x1048560, .bss, code_B650] - [0x1048560, .bss, code_BB50] @@ -1409,7 +1409,7 @@ segments: - [0x1048560, .bss, code_12F30] - [0x1048560, .bss, bsList] - [0x1048560, .bss, code_13780] - - [0x1048560, .bss, code_13900] + - [0x1048560, .bss, bsStoredState] - [0x1048560, .bss, code_13A00] - [0x1048560, .bss, code_13FC0] - [0x1048560, .bss, code_14420] diff --git a/include/SnS.h b/include/SnS.h index dcac6456..ab978aad 100644 --- a/include/SnS.h +++ b/include/SnS.h @@ -7,7 +7,7 @@ */ // Flag set used when collecting an already-unlocked Stop 'n' Swop item in-game #define SNS_COLLECTED (0) -// Flag set used when making a Stop 'n' Swop item visible and collectable in-game +// Flag set used when making a Stop 'n' Swop item visible and collectible in-game #define SNS_UNLOCKED (1) /** diff --git a/include/bs_funcs.h b/include/bs_funcs.h index 02e36397..af23aa89 100644 --- a/include/bs_funcs.h +++ b/include/bs_funcs.h @@ -185,7 +185,7 @@ void bsjump_fall_init(void); void bsjump_fall_update(void); void bsjump_fall_end(void); //BS_30_DIVE_ENTER -void func_802A7DAC(void); +void bsSwim_dive_init(void); void func_802A7E2C(void); void func_802A7F4C(void); //BS_ROLL(void); @@ -348,7 +348,7 @@ void func_802A4548(void); void func_802A4664(void); void func_802A505C(void); //0x58 -void func_802A4748(void); +void bsbfly_beakbomb_crash_init(void); void func_802A48B4(void); void func_802A4A40(void); diff --git a/include/core2/statetimer.h b/include/core2/statetimer.h new file mode 100644 index 00000000..0d15969f --- /dev/null +++ b/include/core2/statetimer.h @@ -0,0 +1,27 @@ +#ifndef _STATE_TIMER_ +#define _STATE_TIMER_ + +#include +#include "structs.h" + +enum state_timer_e{ + STATE_TIMER_0_UNKNOWN, + STATE_TIMER_1_THROW = 1, + STATE_TIMER_2_LONGLEG, + STATE_TIMER_3_TURBO_TALON, + STATE_TIMER_4_UNKNOWN, + STATE_TIMER_5_UNKNOWN, //slide timer + STATE_TIMER_6_UNKNOWN //trot slide timer +}; + +f32 stateTimer_get(enum state_timer_e timer_id); +f32 stateTimer_getPrevious(enum state_timer_e timer_id); +bool stateTimer_isActive(enum state_timer_e timer_id); +bool stateTimer_isDone(enum state_timer_e timer_id); +bool stateTimer_isAt(enum state_timer_e timer_id, f32 value); +void stateTimer_free(void); +void stateTimer_init(void); +void stateTimer_clear(enum state_timer_e timer_id); +void stateTimer_set(enum state_timer_e timer_id, f32 value); +void stateTimer_update(void); +#endif diff --git a/include/enums.h b/include/enums.h index 2e9263be..430f1c03 100644 --- a/include/enums.h +++ b/include/enums.h @@ -1476,10 +1476,10 @@ enum actor_e ACTOR_2_UNKNOWN, ACTOR_4_BIGBUTT = 0x4, - - ACTOR_6_GRUBLIN = 0x6, - - ACTOR_8_CONGA = 0x8, + ACTOR_5_TERMITE, + ACTOR_6_GRUBLIN, + ACTOR_7_MUMBO, + ACTOR_8_CONGA, ACTOR_9_MM_HUT, ACTOR_A_CHUMP_FISH, ACTOR_B_SHOCKSPRING_PAD, @@ -1501,7 +1501,7 @@ enum actor_e ACTOR_25_CEMETARY_POT = 0x25, - ACTOR_29_ORANGE_COLLECTABLE = 0x29, + ACTOR_29_ORANGE_COLLECTIBLE = 0x29, ACTOR_2A_GOLD_BULLION, ACTOR_2B_GOLD_BULLION_THROW_TARGET, ACTOR_2C_TURBO_TALON_TRAINERS, @@ -1546,10 +1546,14 @@ enum actor_e ACTOR_57_ORANGE_PAD, ACTOR_59_JUJU = 0x59, - ACTOR_5A_JIGGY_IN_HAND, + ACTOR_5A_JIGSAW_DANCE, ACTOR_5B_PINK_EGG_LARGEST, - ACTOR_62_JINJO_GREEN = 0x62, + ACTOR_5E_JINJO_YELLOW = 0x5E, + ACTOR_5F_JINJO_ORANGE, + ACTOR_60_JINJO_BLUE, + ACTOR_61_JINJO_PINK, + ACTOR_62_JINJO_GREEN, ACTOR_65_WADING_BOOTS = 0x65, @@ -1574,9 +1578,11 @@ enum actor_e ACTOR_7E_UNKNOWN, ACTOR_7F_UNKNOWN, + ACTOR_A2_FIRE_SPARKLE = 0xA2, + ACTOR_C5_CHIMPY_STUMP = 0xC5, - ACTOR_C7_RIPPER = 0xC7, + ACTOR_C7_GRAVESTONE = 0xC7, ACTOR_C8_BOGGY_2 = 0xC8, ACTOR_CA_TEEHEE = 0xCA, @@ -1616,6 +1622,7 @@ enum actor_e ACTOR_118_GRABBA, ACTOR_119_MAGIC_CARPET_1, + ACTOR_11C_HISTUP = 0x11C, ACTOR_11D_RUBEES_EGG_POT = 0x11D, ACTOR_11B_RUBEE = 0x11B, @@ -1717,11 +1724,11 @@ enum actor_e ACTOR_1EA_POLAR_BEAR_CUB_BLUE, ACTOR_1EB_POLAR_BEAR_CUB_GREEN, ACTOR_1EC_POLAR_BEAR_CUB_RED, - ACTOR_1ED_BLUE_PRESENT_COLLECTABLE, + ACTOR_1ED_BLUE_PRESENT_COLLECTIBLE, - ACTOR_1EF_GREEN_PRESENT_COLLECTABLE = 0x1EF, + ACTOR_1EF_GREEN_PRESENT_COLLECTIBLE = 0x1EF, - ACTOR_1F1_RED_PRESENT_COLLECTABLE = 0x1F1, + ACTOR_1F1_RED_PRESENT_COLLECTIBLE = 0x1F1, ACTOR_1F3_WOZZA = 0x1F3, ACTOR_1F4_WOZZAS_JIGGY, @@ -1896,7 +1903,7 @@ enum actor_e ACTOR_3BF_GRUNTLING_BLUE = 0x3bf, ACTOR_3C0_GRUNTLING_BLACK, ACTOR_3C1_PURPLE_TEEHEE, - ACTOR_3C2_GIANT_RIPPER, + ACTOR_3C2_GIANT_GRAVESTONE, ACTOR_3C4_FF_PRIZE_WASHING_CAULDRON = 0x3C4, @@ -1912,7 +1919,7 @@ enum bs_e BS_1_IDLE = 0x1, BS_2_WALK_SLOW, BS_WALK = 0x3, - BS_WALK_FAST = 0x4, + BS_4_WALK_FAST = 0x4, BS_5_JUMP, BS_CLAW = 0x6, BS_CROUCH = 0x7, @@ -1996,7 +2003,7 @@ enum bs_e BS_LONGLEG_SLIDE = 0x55, BS_56_RECOIL = 0x56, BS_57_BOMB_END = 0x57, - BS_58, + BS_58_BEAKBOMB_CRASH, BS_59_BFLY_UNK59 = 0x59, BS_5A_LOADZONE = 0x5A, BS_CARRY_THROW = 0x5B, @@ -2151,72 +2158,81 @@ enum game_mode_e enum asset_e { - ANIM_BANJO_CROUCH_ENTER = 0x1, - ANIM_BANJO_WALK_CREEP = 0x2, - ASSET_3_ANIM_BSWALK = 0x3, - + ASSET_1_ANIM_BSCROUCH_ENTER = 0x1, + ASSET_2_ANIM_BSWALK_CREEP, + ASSET_3_ANIM_BSWALK, + /* [4] empty */ + ASSET_5_ANIM_BSPUNCH = 0x5, + /* [6] empty */ ASSET_7_ANIM_BSBTROT_EXIT = 0x7, ASSET_8_ANIM_BSJUMP, - ASSET_9_ANIM_BANJO_DIE, - ASSET_A_ANIM_BANJO_CLIMB_MOVE, - ANIM_BANJO_WALK_MUD, - ANIM_BANJO_RUN, - - ANIM_BANJO_TURN = 0xe, + ASSET_9_ANIM_BSDIE, + ASSET_A_ANIM_BSCLIMB_MOVE, + ASSET_B_ANIM_BSWALK_MUD, + ASSET_C_ANIM_BSWALK_RUN, + //ASSET_D_ + ASSET_E_ANIM_BSTURN = 0xe, ASSET_F_ANIM_BSREBOUND, ASSET_10_ANIM_BIGBUTT_RUN, - ASSET_11_ANIM_BSWONDERWING_WALK, - - ANIM_15_ANIM_BTROT_WALK = 0x15, + ASSET_11_ANIM_BSWHIRL_WALK, + /* [0x12..=0x14] empty */ + ASSET_15_ANIM_BSBTROT_WALK = 0x15, ASSET_16_ANIM_BSBTROT_ENTER, - ANIM_BANJO_BFLAP = 0x17, - - ANIM_BANJO_BPECK_ENTER = 0x19, - ASSET_1A_ANIM_BSBPECK = 0x1A, - ANIM_BANJO_WONDERWING_JUMP = 0x1B, - ANIM_BANJO_BBARGE = 0x1C, - ANIM_BANJO_BBUSTER = 0x1D, - + ASSET_17_ANIM_BSBFLAP, + ASSET_18_ANIM_BSBFLAP_ENTER, + ASSET_19_ANIM_BSBPECK_ENTER, + ASSET_1A_ANIM_BSBPECK, + ASSET_1B_ANIM_BSWHIRL_JUMP, + ASSET_1C_ANIM_BSBBARGE, + ASSET_1D_ANIM_BSBBUSTER, + /* [0x1E..=0x20] empty */ ASSET_21_ANIM_BIGBUTT_SLIDE = 0x21, - ANIM_BANJO_WONDERWING_EXIT = 0x22, + ASSET_22_ANIM_BSWHIRL_EXIT, ASSET_23_ANIM_BSWONDERWING_IDLE, - - ASSET_26_ANIM_BTROT_IDLE = 0x26, + ASSET_24_ANIM_CLAM_HOP, + /* [0x25] empty */ + ASSET_26_ANIM_BSBTROT_IDLE = 0x26, ASSET_27_ANIM_BSBTROR_JUMP, - ASSET_28_ANIM_BSTERMITE_OW, - ASSET_29_ANIM_BSTERMITE_DIE, + ASSET_28_ANIM_BSANT_OW, + ASSET_29_ANIM_BSANT_DIE, ASSET_2A_ANIM_BSEGGHEAD, ASSET_2B_ANIM_BSEGGASS, - - ANIM_BANJO_BJIG_JIGGY = 0x2e, - - ASSET_32_ANIM_BIGBUTT_ATTACK = 0x32, + ASSET_2C_ANIM_CRAB_WALK, + ASSET_2D_ANIM_JINJO_IDLE, + ASSET_2E_ANIM_BSJIG_JIGGY, + ASSET_2F_ANIM_JINJO_HELP, + ASSET_30_ANIM_JIGSAWDANCE_DANCE, + ASSET_31_ANIM_JINJO_JUMP, + ASSET_32_ANIM_BIGBUTT_ATTACK, ASSET_33_ANIM_BIGBUTT_EAT, ASSET_34_ANIM_BIGBUTT_DIE, ASSET_35_ANIM_BIGBUTT_ALERT, ASSET_36_ANIM_BIGBUTT_WALK, - - ASSET_38_BANJO_FLY = 0x38, - ASSET_39_ANIM_BSSWIM_SWIM, - - ANIM_BANJO_LONGLEG_JUMP = 0x3D, - - ANIM_BANJO_LONGLEG_ENTER_AS_BIRD = 0x40, + //ASSET_37_ + ASSET_38_ANIM_BSBFLY = 0x38, + ASSET_39_ANIM_BSSWIM_MOVE, + /* [0x3A, 0x3B] empty */ + ASSET_3C_ANIM_BSSWIM_DIVE_ENTER = 0x3C, + ASSET_3D_ANIM_BSLONGLEG_JUMP, + ASSET_3E_ANIM_BSBFLY_BEAKBOMB_CRASH, + ASSET_3F_ANIM_BSSWIM_DIVE_MOVE, + ASSET_40_ANIM_BSLONGLEG_ENTER_FROM_BTROT, ASSET_41_ANIM_BSLONGLEG_IDLE, ASSET_42_ANIM_BSLONGLEG_WALK, - ASSET_43_ANIM_BANJO_BEAKBOMB_START, - - ANIM_BANJO_FLY_ENTER = 0x45, - - ANIM_BANJO_BSHOCK_CHARGE = 0x48, - ANIM_BANJO_BSHOCK_JUMP = 0x49, - - ANIM_BANJO_BFLIP = 0x4B, - - ANIM_BANJO_OW = 0x4D, - anim_mudhut_smashing = 0x4E, - ANIM_BANJO_ROLL = 0x4F, - + ASSET_43_ANIM_BSBFLY_BEAKBOMB_START, + ASSET_44_ANIM_BSBTROT_TURBO_WALK, + ASSET_45_ANIM_BSBFLY_ENTER, + /* [0x46] empty */ + //ASSET_47_ + ASSET_48_ANIM_BSBSHOCK_CHARGE = 0x48, + ASSET_49_ANIM_BSBSHOCK_JUMP, + /* [0x4A] empty */ + ASSET_4B_ANIM_BSBFLIP_ENTER = 0x4B, + ASSET_4C_ANIM_BSBFLIP_HOLD, + ASSET_4D_ANIM_BSOW, + ASSET_4E_ANIM_MUDHUT_SMASH, + ASSET_4F_ANIM_BSTWIRL, + /* [0x50] empty */ ASSET_51_ANIM_CONGA_IDLE = 0x51, ASSET_52_ANIM_CONGA_OW, ASSET_53_ANIM_CONGA_DEFEAT, @@ -2224,42 +2240,103 @@ enum asset_e ASSET_55_ANIM_CONGA_BEAT_CHEST, ASSET_56_ANIM_CONGA_RAISE_ARMS, ASSET_57_ANIM_BSSWIM_IDLE, - - ANIM_BANJO_SLIDE_BACK = 0x59, - ANIM_BANJO_SLIDE_FRONT = 0x5A, - - ASSET_5E_ANIM_BSANT_IDLE = 0x5E, - ASSET_5F_ANIM_BSANT_WALK = 0x5F, - ASSET_60_ANIM_BSTERMITE_JUMP = 0x60, - - ASSET_65_ANIM_BEEHIVE_DIE = 0x65, + ASSET_58_ANIM_BSSWIM_IDLE2, + ASSET_59_ANIM_BSSLIDE_BACK, + ASSET_5A_ANIM_BSSLIDE_FRONT, + ASSET_5B_ANIM_CHIMPY_JUMP, + ASSET_5C_ANIM_CHIMPY_IDLE, + ASSET_5D_ANIM_CHIMPY_WALK, + ASSET_5E_ANIM_BSANT_IDLE, + ASSET_5F_ANIM_BSANT_WALK, + ASSET_60_ANIM_BSANT_JUMP, + ASSET_61_ANIM_BSBFLIP_EXIT, + ASSET_62_ANIM_GRUBLIN_IDLE, + ASSET_63_ANIM_GRUBLIN_WALK, + ASSET_64_ANIM_GRUBLIN_JUMP, + ASSET_65_ANIM_BEEHIVE_DIE, ASSET_66_ANIM_BSBTROT_OW, - - ASSET_69_ANIM_BSSURF = 0x69, - - ASSET_6F_ANIM_BSSTAND_IDLE = 0x6F, - ASSET_70_ANIM_BANJO_DIVE_IDLE, - ASSET_71_ANIM_BANJO_BSDIVE_SWIM_SLOW, + ASSET_67_ANIM_WADINGBOOTS_WALK, + ASSET_68_ANIM_BSJUMP_TUMBLE, + ASSET_69_ANIM_BSSURF, + ASSET_6A_ANIM_MUMBO_SLEEP, + ASSET_6B_ANIM_MUMBO_WAKEUP, + ASSET_6C_ANIM_MUMBO_IDLE, + ASSET_6D_ANIM_MUMBO_TRANSFORM, + ASSET_6E_ANIM_MUMBO_UNKNOWN, + ASSET_6F_ANIM_BSSTAND_IDLE, + ASSET_70_ANIM_BSSWIM_DIVE_IDLE, + ASSET_71_ANIM_BSSWIM_DIVE_SLOW, ASSET_72_ANIM_BSCARRY_IDLE, ASSET_73_ANIM_BSCARRY_WALK, - + /* [0x74, 0x75] empty */ + ASSET_76_ANIM_JIGSAWDANCE_HOLD = 0x76, + ASSET_77_ANIM_BSTIMEOUT, + //ASSET_78 // snacker_swimming + //ASSET_79 // Mumbo Concert Playing Instrument + //ASSET_7A // Banjo Concert Angry + //ASSET_7B // Banjo Concert Play + //ASSET_7C // Banjo Concert End + //ASSET_7D // Tooty Concert Start + //ASSET_7E // Banjo Concert Start + //ASSET_7F // Concert Cutscene + //ASSET_80 // Concert Timer + //ASSET_81 // Concert Unknown (0x81) + //ASSET_82 // Mumbo Concert Dance + //ASSET_83 // Tooty Concert Dance + //ASSET_84 // Tooty Hopping + //ASSET_85 // ??? + /* [0x86 .. =0x8B] empty */ + //ASSET_8C //Rareware Logo Falling + /* [0x8D, 0x8E] empty */ + //ASSET_8F //Nintendo Logo Walking + //ASSET_90 //Nintendo Logo Shrugging + //ASSET_91 //Frog Hopping (Concert) + ASSET_92_ANIM_SHRAPNEL_MOVE = 0x92, + //ASSET_93 //Tooty Running (Concert) ASSET_94_ANIM_GRUBLIN_DIE = 0x94, - - ASSET_9E_ANIM_TEEHEE_IDLE = 0x9E, + ASSET_95_ANIM_BSSTAND_KAZOOIE_PECK, + ASSET_96_ANIM_CRAB_UPSIDEDOWN, + ASSET_97_ANIM_CRAB_FLIP_UPSIDEDOWN, + ASSET_98_ANIM_FIRE_SPARKLE, + /* [0x99] empty */ + ASSET_9A_ANIM_GRAVESTONE_IDLE = 0x9A, + ASSET_9B_ANIM_GRAVESTONE_WALK = 0x9B, + /* [0x9C] empty */ + ASSET_9D_ANIM_BAT_FLY = 0x9D, + ASSET_9E_ANIM_TEEHEE_IDLE, ASSET_9F_ANIM_TEEHEE_ALERTED, ASSET_A0_ANIM_BSPUMPKIN_WALK, ASSET_A1_ANIM_BSPUMPKIN_JUMP, - - ASSET_A3_ANIM_NAPPER_SLEEPING = 0xA3, + ASSET_A2_ANIM_CONGA_THROW_2, + ASSET_A3_ANIM_NAPPER_ASLEEP, ASSET_A4_ANIM_NAPPER_AWAKE, - - ASSET_A9_ANIM_FLOWER_POT = 0xA9, - - ASSET_AC_ANIM_TEEHEE_CHASE = 0xAC, - + ASSET_A5_ANIM_NAPPER_WALK, + ASSET_A6_ANIM_NAPPER_ALERT, + ASSET_A7_ANIM_MOTZHAND_IDLE, + ASSET_A8_ANIM_MOTZHAND_PLAY, + ASSET_A9_ANIM_FLOWER_POT, + ASSET_AA_ANIM_CLAM_IDLE, + ASSET_AB_ANIM_CLAM_EAT, + ASSET_AC_ANIM_TEEHEE_CHASE, + ASSET_AD_ANIM_BAT_TAKE_FLIGHT, + ASSET_AE_ANIM_BAT_ROOST, + /* [0xAF] empty */ ASSET_B0_ANIM_BSJUMP_FALL = 0xB0, ASSET_B1_ANIM_BSCLIMB_IDLE_1, ASSET_B2_ANIM_BSCLIMB_IDLE_2, +/*HERE*/ + + ASSET_B5_ANIM_BLUBBER_WALK = 0xB5, + ASSET_B6_ANIM_BLUBBER_CRY, + ASSET_B7_ANIM_BLUBBER_DANCE, + ASSET_B8_ANIM_BLUBBER_RUN, + ASSET_B9_ANIM_BSSWIM_DIE, + /* [0xBA, 0xBB] empty */ + ASSET_BC_ANIM_LOCKUP = 0xBC, + ASSET_BD_ANIM_NIPPER_VULNERABLE, + ASSET_BE_ANIM_NIPPER_OW, + ASSET_BF_ANIM_NIPPER_ATTACK, + ASSET_C0_ANIM_NIPPER_IDLE, ASSET_C3_ANIM_CLANKER_IDLE = 0xC3, ASSET_C4_ANIM_CLANKER_BITE, @@ -2267,14 +2344,18 @@ enum asset_e ASSET_C6_ANIM_GRABBA_HIDE, ASSET_C7_ANIM_GRABBA_IDLE, ASSET_C8_ANIM_GRABBA_DEFEATED, - - ASSET_CA_ANIM_GLOOP_SWIMMING = 0xCA, + ASSET_C9_ANIM_MAGIC_CARPET, + ASSET_CA_ANIM_GLOOP_SWIMMING, ASSET_CB_ANIM_GLOOP_BLOWING_BUBBLE, - ASSET_CC_ANIM_BANJO_BEAKBOMB_END, + ASSET_CC_ANIM_BSFLY_BEAKBOMB_END, - ASSET_D2_ANIM_BANJO_GETTING_UP = 0xD2, - - ASSET_D4_ANIM_SWITCH_DOWN = 0xD4, + ASSET_CE_ANIM_RUBEE_STOP_PLAYING = 0xCE, + ASSET_CF_ANIM_HISTUP_RAISED, + ASSET_D0_ANIM_HISTUP_GROW, + ASSET_D1_ANIM_HISTUP_HIDE, + ASSET_D2_ANIM_BSSPLAT, + ASSET_D3_ANIM_BSBFLY_BEAKBOMB_REBOUND, + ASSET_D4_ANIM_SWITCH_DOWN, ASSET_D5_ANIM_SWITCH_UP, ASSET_D6_ANIM_TURBO_TALON_TRAINERS, @@ -2282,9 +2363,12 @@ enum asset_e ASSET_DC_ANIM_GOBI_ROPE_PULLING, ASSET_DD_ANIM_GOBI_ROPE, - ASSET_E0_ANIM_BSCROC_WALK = 0xE0, - ASSET_E1_ANIM_BSCROC_IDLE = 0xE1, - + ASSET_DF_ANIM_RUBEE_PET_TOOTS = 0xDF, + ASSET_E0_ANIM_BSCROC_WALK, + ASSET_E1_ANIM_BSCROC_IDLE, + ASSET_E2_ANIM_HISTUP_PEEK, + ASSET_E3_ANIM_RUBEE_IDLE, + ASSET_E4_ANIM_RUBEE_PLAY, // ASSET_E5_ANIM_SLAPPA_APPEAR = 0xE5, // ASSET_E6_ANIM_SLAPPA_IDLE, // ASSET_E7_ANIM_SLAPPA_HIDE, @@ -2297,6 +2381,8 @@ enum asset_e ASSET_F4_ANIM_GOBI_IDLE = 0xF4, + ASSET_F6_ANIM_BSSTAND_PULL_KAZOOIE = 0xF6, + ASSET_F8_ANIM_GOBI_RUNNING = 0xF8, ASSET_FA_ANIM_FLIBBIT_IDLE = 0xFA, @@ -2311,12 +2397,12 @@ enum asset_e ASSET_108_ANIM_SIR_SLUSH_IDLE = 0x108, ASSET_109_ANIM_SIR_SLUSH_ATTACK, - ANIM_BANJO_CROUCH = 0x10C, + ASSET_10C_ANIM_BSCROUCH_IDLE = 0x10C, ASSET_112_ANIM_FLIBBIT_DIE = 0x112, ASSET_113_ANIM_FLIBBIT_DEAD, - ANIM_BANJO_CROUCH_NOINPUT = 0x116, + ASSET_116_ANIM_BSCROUCH_NOINPUT = 0x116, ASSET_11B_ANIM_BSTHROW = 0x11B, ASSET_11C_ANIM_BSCROC_JUMP, @@ -2337,8 +2423,10 @@ enum asset_e ASSET_12D_ANIM_CHOIR_TURTLE_IDLE, ASSET_12E_ANIM_CHOIR_TURTLE_SING, ASSET_12F_ANIM_CHOIR_TURTLE_HURT, - - ASSET_132_ANIM_FLOTSAM_MOVE = 0x132, + ASSET_130_ANIM_JINJO_FLY_START, + ASSET_131_ANIM_JINJO_FLY_END, + ASSET_132_ANIM_FLOTSAM_MOVE, + ASSET_133_ANIM_NIPPER_DIE, ASSET_138_ANIM_ZOOMBOX = 0x138, ASSET_139_ANIM_BOTTLES_EXIT, @@ -2360,7 +2448,12 @@ enum asset_e ASSET_153_ANIM_BURIED_TREASURE_APPEAR = 0x153, - ASSET_15A_ANIM_GRILL_CHOMPA_ATTACK = 0x15A, + ASSET_155_ANIM_CRAB_FLIP_UPRIGHT = 0x155, + ASSET_156_ANIM_MUTANT_CRAB_WALK, + ASSET_157_ANIM_MUTANT_CRAB_FLIP_UPSIDEDOWN, + ASSET_158_ANIM_MUTANT_CRAB_UPSIDEDOWN, + ASSET_159_ANIM_MUTANT_CRAB_UPRIGHT, + ASSET_15A_ANIM_GRILL_CHOMPA_ATTACK, ASSET_15B_ANIM_GRILL_CHOMPA_DIE, ASSET_15C_ANIM_CLANKER_WHIPCRACK_IDLE, ASSET_15D_ANIM_CLANKER_WHIPCRACK_ATTACK, @@ -2371,7 +2464,8 @@ enum asset_e ASSET_165_ANIM_BEEHIVE_IDLE, ASSET_166_ANIM_BURIED_TREASURE_BOUNCE, - ASSET_16F_ANIM_ZUBBA_FLY_MOVE = 0x16F, + ASSET_16E_ANIM_MUMBO_RECLINE = 0x16E, + ASSET_16F_ANIM_ZUBBA_FLY_MOVE, ASSET_170_ANIM_ZUBBA_FLY_IDLE, ASSET_171_ANIM_ZUBBA_DIE, ASSET_172_ANIM_ZUBBA_LAND, @@ -2382,6 +2476,8 @@ enum asset_e ASSET_17C_ANIM_TWINKLY_IDLE = 0x17C, ASSET_17D_ANIM_POLAR_BEAR_CUB_HAPPY = 0x17D, ASSET_17E_ANIM_POLAR_BEAR_CUB_SAD, + ASSET_17F_ANIM_MUMBO_SWEEP, + ASSET_180_ANIM_MUMBO_ROTATE, ASSET_184_ANIM_CLUCKER_ATTACK_SHORT = 0x184, ASSET_185_ANIM_CLUCKER_ATTACK_LONG, @@ -2389,7 +2485,7 @@ enum asset_e ASSET_188_ANIM_BSPUMPKIN_DIE = 0x188, ASSET_189_ANIM_FLOTSAM_DIE, - ASSET_18A_XMAS_GIFT, + ASSET_18A_ANIM_XMAS_GIFT, ASSET_18E_ANIM_CATERPILLAR_IDLE = 0x18E, @@ -2407,7 +2503,9 @@ enum asset_e ASSET_1B1_ANIM_TWINKLY_MUNCHER_IDLE, ASSET_1B2_ANIM_TWINKLY_MUNCHER_ATTACK, - ASSET_1DC_ANIM_BEE_FLY = 0x1dc, + ASSET_1DA_ANIM_CRAB_IDLE = 0x1da, + ASSET_1DB_ANIM_MUTANT_CRAB_IDLE, + ASSET_1DC_ANIM_BEE_FLY, ASSET_1DD_ANIM_BEE_WALK, ASSET_1DE_ANIM_BEE_IDLE, @@ -2415,7 +2513,12 @@ enum asset_e ASSET_1E1_ANIM_BEE_DIE, ASSET_1E2_ANIM_BEE_JUMP, - ASSET_1F5_ANIM_TRANSITION_FALLING_JIGGIES = 0x1F5, + ASSET_1ED_ANIM_GRAVESTONE_OW = 0x1ED, + ASSET_1EE_ANIM_GRAVESTONE_DIE, + + + ASSET_1F4_ANIM_SHRAPNEL_IDLE = 0x1F4, + ASSET_1F5_ANIM_TRANSITION_FALLING_JIGGIES, ASSET_220_ANIM_SIR_SLUSH_DIE = 0x220, ASSET_221_ANIM_WOZZA_IN_CAVE, @@ -2442,6 +2545,7 @@ enum asset_e ASSET_253_ANIM_BIGBUTT_OW = 0x253, ASSET_254_ANIM_BIGBUTT_FALL, ASSET_255_ANIM_BIGBUTT_GET_UP, + ASSET_256_ANIM_TERMITE_OW, ASSET_25B_ANIM_ACORN_IDLE = 0x25B, @@ -2450,7 +2554,9 @@ enum asset_e ASSET_288_ANIM_FLIBBIT_OW = 0x288, - ASSET_2AB_ANIM_TEEHEE_DIE = 0x2AB, + ASSET_2A9_ANIM_BAT_FALL = 0x2A9, + ASSET_2AA_ANIM_BAT_DIE, + ASSET_2AB_ANIM_TEEHEE_DIE, // 2d1 Grey House Brick (Upon Smashing MM Huts) ASSET_2D2_MODEL_ORANGE = 0x2d2, //projectile // 2d3 MM Conga Tree @@ -2575,9 +2681,9 @@ enum asset_e // 34a Floor Cobweb // 34b Banjo's Bed // 34c Furnace Fun Booth - // 34d Banjo Kazooie Low Poly Model - // 34e Banjo Kazooie High Poly Model - ASSET_34F_MODEL_BANJO_TERMITE = 0x34F, + ASSET_34D_MODEL_BANJOKAZOOIE_LOW_POLY = 0x34D, + ASSET_34E_MODEL_BANJOKAZOOIE_HIGH_POLY, + ASSET_34F_MODEL_BANJO_TERMITE, ASSET_350_MODEL_TERMITE, ASSET_351_MODEL_CLAM, ASSET_352_MODEL_SLED, @@ -2593,8 +2699,8 @@ enum asset_e ASSET_35B_FF_PRIZE_TOOTY = 0x35b, ASSET_35C_MODEL_CONGA, ASSET_35D_MODEL_CHIMPY, - // 35e (Jiggy Podium?) - ASSET_35F_MODEL_JIGGY = 0x35F, + ASSET_35E_MODEL_JIGSAW_DANCE, + ASSET_35F_MODEL_JIGGY, // 360 Blue Egg Fragment ASSET_361_MODEL_EMPTY_HONEYCOMB = 0x361, ASSET_362_MODEL_BANJO_BEE, @@ -2640,20 +2746,18 @@ enum asset_e // Unused ASSET_38A_MODEL_BOGGY_1 = 0x38A, // 38b Boggy Race Red Flag - // 38c Snippet Claw - // 38d Snippet Leg - // 38e Snippet Head - // 38f Mutie Snippet With Glow - ASSET_38F_MODEL_MUTIE_SNIPPET = 0x38F, - // 390 Mutie Snippet Head - // 391 Mutie Snippet Leg - // 392 Mutie Snippet Claw - // 393 Ticker Leg - // 394 Ticker Head No Eyes - // 395 Ticker Body - // 396 Ticker Eye - // 397 BGS Large Alligator Head - ASSET_397_MODEL_BIG_ALLIGATOR = 0x397, + ASSET_38C_MODEL_CRAB_CLAW = 0x38c, + ASSET_38D_MODEL_CRAB_LEG, + ASSET_38E_MODEL_CRAB_HEAD, + ASSET_38F_MODEL_MUTIE_SNIPPET, + ASSET_390_MODEL_MUTANT_CRAB_HEAD, + ASSET_391_MODEL_MUTANT_CRAB_LEG, + ASSET_392_MODEL_MUTANT_CRAB_CLAW, + ASSET_393_MODEL_TERMITE_LEG, + ASSET_394_MODEL_TERMITE_HEAD, + ASSET_395_MODEL_TERMITE_BODY, + ASSET_396_MODEL_TERMITE_EYES, + ASSET_397_MODEL_BIG_ALLIGATOR, // 398 Concert Ant // Unused // Unused @@ -2675,8 +2779,8 @@ enum asset_e // Unused // Unused // Unused - // 3ad Fire Sparkle - ASSET_3AE_MODEL_GRAVE_FLOWER_POT = 0x3AE, + ASSET_3AD_FIRE_SPARKLE = 0x3AD, + ASSET_3AE_MODEL_GRAVE_FLOWER_POT, // 3af (Green Plank?) // 3b0 Snacker // 3b1 Concert Mumbo @@ -2699,13 +2803,13 @@ enum asset_e ASSET_3C2_MODEL_JINJO_GREEN, // Unused // Unused - ASSET_3C5_MODEL_GRUBLIN = 0x3c5, - // 3c6 Mumbo - ASSET_3C7_MODEL_GOLD_BULLION = 0x3c7, + ASSET_3C5_MODEL_GRUBLIN = 0x3c5, + ASSET_3C6_MODEL_MUMBO, + ASSET_3C7_MODEL_GOLD_BULLION, ASSET_3C8_MODEL_CHIMPY_STUMP, - ASSET_3C9_MODEL_RIPPER, + ASSET_3C9_MODEL_GRAVESTONE, ASSET_3CA_MODEL_BAT, - ASSET_3CB_MODEL_TEEHEE = 0x3cb, + ASSET_3CB_MODEL_TEEHEE, // 3cc MMM Barrel Lid // 3cd MMM Tumblar Door // 3ce MMM Mansion Door @@ -3119,9 +3223,9 @@ enum asset_e ASSET_564_MODEL_PURPLE_TEEHEE = 0x564, // 565 Bottles Game Banjo's Hand ASSET_566_MODEL_BLACK_SNIPPET = 0x566, - // 567 Black Snippet Body (Upon Death) - // 568 Black Snippet Leg (Upon Death) - // 569 Black Snippet Pincer (Upon Death) + ASSET_567_MODEL_BLACK_CRAB_HEAD, + ASSET_568_MODEL_BLACK_CRAB_LEG, + ASSET_569_MODEL_BLACK_CRAB_CLAW, // 56a FP Chimney ASSET_56B_MODEL_SANDYBUTT_PYRAMID = 0x56B, // 56c The End Sign @@ -3504,9 +3608,8 @@ enum asset_e ASSET_710_SPRITE_SPARKLE_PURPLE = 0x710, ASSET_711_SPRITE_SPARKLE_DARK_BLUE, - - - ASSET_713_SPRITE_SPARKLE_YELLOW = 0x713, + ASSET_712_SPRITE_SPARKLE_GREEN, + ASSET_713_SPRITE_SPARKLE_YELLOW, ASSET_715_SPRITE_SPARKLE_RED = 0x715, ASSET_716_SPRITE_SPARKLE_WHITE, @@ -3659,6 +3762,12 @@ enum asset_e ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED = 0xa17, + ASSET_A1F_DIALOG_SHOCKJUMP_LEARN = 0xa1f, + ASSET_A20_DIALOG_FLY_LEARN, + + ASSET_A22_DIALOG_FLY_REFRESHER = 0xa22, + ASSET_A23_DIALOG_SHOCKJUMP_REFRESHER, + ASSET_A28_TEXT_LEAKY_DONE = 0xA28, ASSET_A6F_TEXT_CHARMER_MEET = 0xA6F, @@ -3682,6 +3791,8 @@ enum asset_e ASSET_A81_TEXT_SANDYBUTT_ENTER, ASSET_A82_TEXT_SANDYBUTT_START_MAZE, ASSET_A83_TEXT_SANDYBUTT_DONE, + ASSET_A84_DIALOG_TURBOTRAINERS_LEARN, + ASSET_A85_DIALOG_TURBOTRAINERS_REFRESHER, ASSET_ADE_TEXT_LOGGO_AS_BEAR = 0xade, ASSET_ADF_TEXT_ENTER_LOGGO, @@ -3695,28 +3806,253 @@ enum asset_e ASSET_B3C_TEXT_CONGA_MEET, ASSET_B3E_TEXT_CONGA_MEET_AS_TERMITE = 0xb3e, - - ASSET_B44_TEXT_JUJU_MEET = 0xb44, + ASSET_B3F_DIALOG_CHIMPY_MEET, + ASSET_B40_DIALOG_CHIMPY_COMPLETE, + ASSET_B41_DIALOG_TERMITE_COOL_SHORTS, + ASSET_B42_DIALOG_TERMITE_COOL_BACKPACK, + ASSET_B43_DIALOG_TERMITE_MEET_AS_BEAR, + ASSET_B44_TEXT_JUJU_MEET, ASSET_B45_TEXT_JIGGY_COLLECT_10, + ASSET_B47_DIALOG_EGGS_LEARN = 0xb47, + ASSET_B48_DIALOG_BEAKBUSTER_LEARN, + ASSET_B49_DIALOG_TALON_TROT_LEARN, + ASSET_B4A_DIALOG_TALON_TROT_REFRESHER, + ASSET_B4B_DIALOG_EGGS_REFRESHER, + ASSET_B4C_DIALOG_BEAKBUSTER_REFRESHER, + + ASSET_B51_TEXT_BOTTLES_HOW_TO_EXIT_LEVEL = 0xb51, ASSET_C15_TEXT_TWINKLIE_MINIGAME_LOST = 0xc15, + ASSET_C20_DIALOG_PRESENT_COLLECTIBLE_MEET_BLUE = 0xC20, + ASSET_C21_DIALOG_PRESENT_COLLECTIBLE_MEET_GREEN = 0xC21, + ASSET_C22_DIALOG_PRESENT_COLLECTIBLE_MEET_RED = 0xC22, + ASSET_C23_DIALOG_BEAKBOMB_LEARN, + ASSET_C24_DIALOG_BEAKBOMB_REFRESHER, + text_flibbits_meet = 0xc81, text_flibbits_defeat = 0xc82, text_flibbits_return = 0xc83, - ASSET_D34_TEXT_GLOOP_MEET = 0xd34, + ASSET_C88_DIALOG_LONGLEG_LEARN = 0xC88, + ASSET_C89_DIALOG_LONGLEG_REFRESHER, + + ASSET_D32_DIALOG_MUTANT_CRAB_MEET = 0xD32, + ASSET_D33_DIALOG_MUTANT_CRAB_DEFEAT, + ASSET_D34_TEXT_GLOOP_MEET, + ASSET_D35_DIALOG_WONDERWING_LEARN, + ASSET_D36_DIALOG_WONDERWING_REFRESHER, ASSET_D39_TEXT_BOTTLES_REFILL_HEALTH = 0xd39, - ASSET_D96_TEXT_BEEHIVE = 0xd96, + ASSET_D8F_DIALOG_MUMBO_MEET = 0xD8F, + ASSET_D90_DIALOG_MUMBO_MAGIC_PAID_FOR, + ASSET_D91_DIALOG_MUMBO_XFORM_ANT, + ASSET_D92_DIALOG_MUMBO_XFORM_PUMPKIN, + ASSET_D93_DIALOG_MUMBO_XFORM_WALRUS, + ASSET_D94_DIALOG_MUMBO_XFORM_CROC, + ASSET_D95_DIALOG_MUMBO_XFORM_BEE, + ASSET_D96_DIALOG_BEEHIVE_MEET, + ASSET_D97_DIALOG_JINJO_MEET_YELLOW, + ASSET_D98_DIALOG_JINJO_MEET_BLUE, + ASSET_D99_DIALOG_JINJO_MEET_GREEN, + ASSET_D9A_DIALOG_JINJO_MEET_PINK, + ASSET_D9B_DIALOG_JINJO_MEET_ORANGE, + + ASSET_DA5_DIALOG_WADINGBOOTS_MEET = 0xDA5, + ASSET_DA6_TEXT_BEEHIVE_WITH_BEES, + ASSET_DA7_DIALOG_MUMBO_CCW_SUMMER, + ASSET_DA8_DIALOG_MUMBO_CCW_AUTUMN, - ASSET_DA6_TEXT_BEEHIVE_WITH_BEES = 0xda6, + ASSET_DAA_DIALOG_MUMBO_HAS_ENOUGH_TOKENS = 0xDAA, + ASSET_DAB_DIALOG_MUMBO_NOT_ENOUGH_TOKENS, + ASSET_DAC_DIALOG_MUMBO_FAIL_TO_BUY, + ASSET_DAD_DIALOG_MUMBO_XFORM_IN_CRYPT, + ASSET_DAE_DIALOG_MUMBO_TREX_START, + ASSET_DAF_DIALOG_MUMBO_TREX_MISTAKE, + ASSET_DB0_DIALOG_MUMBO_MISTAKE_0, + ASSET_DB1_DIALOG_MUMBO_MISTAKE_1, + ASSET_DB2_DIALOG_MUMBO_MISTAKE_2, - ASSET_14CF_MODEL_SM_OPA = 0x14CF, - ASSET_14D0_MODEL_SM_XLU + ASSET_F5B_DIALOG_MUMBO_MAGIC_GET_WEAK_FULL = 0xF5b, + ASSET_F5C_DIALOG_MUMBO_MAGIC_GET_WEAK_ABREV, + ASSET_F5D_DIALOG_MUMBO_MAGIC_RUN_OUT_FULL, + ASSET_F5E_DIALOG_MUMBO_MAGIC_RUN_OUT_ABREV, + + ASSET_F64_DIALOG_NOTEDOORS_LEARN = 0xf64, + ASSET_F65_DIALOG_NOTEDOORS_REFRESHER, + + + ASSET_146B_MODEL_TTC_TREASURE_TROVE_COVE_OPA = 0x146B, + ASSET_146C_MODEL_TTC_TREASURE_TROVE_COVE_XLU, + ASSET_146D_MODEL_TTC_NIPPERS_SHELL_OPA, + ASSET_146E_MODEL_TTC_NIPPERS_SHELL_XLU, + ASSET_146F_MODEL_TTC_BLUBBERS_SHIP_OPA, + ASSET_1470_MODEL_TTC_BLUBBERS_SHIP_XLU, + ASSET_1471_MODEL_TTC_SANDCASTLE_OPA, + ASSET_1472_MODEL_TTC_SANDCASTLE_XLU, + ASSET_1473_MODEL_TTC_SHARKFOOD_ISLAND_OPA, + ASSET_1474_MODEL_GV_GOBIS_VALLEY_OPA, + ASSET_1475_MODEL_GV_GOBIS_VALLEY_XLU, + ASSET_1476_MODEL_GV_MEMORY_GAME_OPA, + /* [0x1477] empty */ + ASSET_1478_MODEL_GV_SANDYBUTTS_MAZE_OPA = 0x1478, + ASSET_1479_MODEL_GV_SANDYBUTTS_MAZE_XLU, + ASSET_147A_MODEL_GV_WATER_PYRAMIDS_OPA, + ASSET_147B_MODEL_GV_WATER_PYRAMIDS_XLU, + ASSET_147C_MODEL_GV_RUBEES_CHAMBER_OPA, + ASSET_147D_MODEL_GV_INSIDE_JINXY_OPA, + ASSET_147E_MODEL_GV_SNS_CHAMBER_OPA, + ASSET_147F_MODEL_MMM_MAD_MONSTER_MANSION_OPA, + ASSET_1480_MODEL_MMM_MAD_MONSTER_MANSION_XLU, + ASSET_1481_MODEL_MMM_RAINBARREL_OPA, + ASSET_1482_MODEL_MMM_CELLAR_OPA, + ASSET_1483_MODEL_MMM_SECRET_CHURCH_ROOM_OPA, + ASSET_1484_MODEL_MMM_SECRET_CHURCH_ROOM_XLU, + ASSET_1485_MODEL_MMM_NAPPERS_ROOM_OPA, + ASSET_1486_MODEL_MMM_CHURCH_OPA, + ASSET_1487_MODEL_MMM_CHURCH_XLU, + ASSET_1488_MODEL_MMM_TUMBLARS_SHED_OPA, + ASSET_1489_MODEL_MMM_EGG_ROOM_OPA, + ASSET_148A_MODEL_MMM_EGG_ROOM_XLU, + ASSET_148B_MODEL_MMM_NOTE_ROOM_OPA, + ASSET_148C_MODEL_MMM_NOTE_ROOM_XLU, + ASSET_148D_MODEL_MMM_FEATHER_ROOM_OPA, + ASSET_148E_MODEL_MMM_FEATHER_ROOM_XLU, + ASSET_148F_MODEL_MMM_BATHROOM_OPA, + ASSET_1490_MODEL_MMM_BATHROOM_XLU, + ASSET_1491_MODEL_MMM_BEDROOM_OPA, + ASSET_1492_MODEL_MMM_BEDROOM_XLU, + ASSET_1493_MODEL_MMM_HONEYCOMB_ROOM_OPA, + ASSET_1494_MODEL_MMM_HONEYCOMB_ROOM_XLU, + ASSET_1495_MODEL_MMM_WELL_OPA, + ASSET_1496_MODEL_MMM_WELL_XLU, + ASSET_1497_MODEL_MMM_RAINBARREL_XLU, + ASSET_1498_MODEL_MMM_INSIDE_LOGGO_OPA, + ASSET_1499_MODEL_MMM_INSIDE_LOGGO_XLU, + ASSET_149A_MODEL_MMM_NAPPERS_ROOM_XLU, + ASSET_149B_MODEL_MMM_CELLAR_XLU, + //149C - Black everywhere! You dont fall and theres invisible walls and floors! + ASSET_149D_MODEL_CS_START_NINTENDO_OPA = 0x149D, + ASSET_149E_MODEL_CS_START_RAREWARE_OPA, + ASSET_149F_MODEL_CS_END_SPIRAL_MOUNTAIN_OPA, + ASSET_14A0_MODEL_CS_START_RAREWARE_XLU, + ASSET_14A1_MODEL_CS_START_NINTENDO_XLU, + ASSET_14A2_MODEL_CS_BANJOS_HOUSE_OPA, + ASSET_14A3_MODEL_CS_END_SPIRAL_MOUNTAIN_XLU, + ASSET_14A4_MODEL_CS_BANJOS_HOUSE_XLU, + ASSET_14A5_MODEL_CS_BEACH_XLU, + ASSET_14A6_MODEL_CS_INTRO_SPIRAL_MOUNTAIN_OPA, + /* [0x1477] empty */ + ASSET_14A8_MODEL_GL_GV_LOBBY_XLU = 0x14A8, + ASSET_14A9_MODEL_CS_BEACH_OPA, + ASSET_14AA_MODEL_MM_MUMBOS_MOUNTAIN_OPA, + ASSET_14AB_MODEL_MM_MUMBOS_MOUNTAIN_XLU, + ASSET_14AC_MODEL_SM_TICKERS_TOWER_OPA, + ASSET_14AD_MODEL_SM_TICKERS_TOWER_XLU, + ASSET_14AE_MODEL_MUMBOS_SKULL_OPA, + /* [0x14AF] empty */ + ASSET_14B0_MODEL_RBB_RUSTY_BUCKET_BAY_OPA = 0x14B0, + ASSET_14B1_MODEL_RBB_RUSTY_BUCKET_BAY_XLU, + ASSET_14B2_MODEL_RBB_ENGINE_ROOM_OPA, + ASSET_14B3_MODEL_RBB_ENGINE_ROOM_XLU, + ASSET_14B4_MODEL_RBB_WAREHOUSE_OPA, + ASSET_14B5_MODEL_RBB_WAREHOUSE_XLU, + ASSET_14B6_MODEL_RBB_BOATHOUSE_OPA, + ASSET_14B7_MODEL_RBB_BOATHOUSE_XLU, + ASSET_14B8_MODEL_RBB_CONTAINER_1_OPA, + ASSET_14B9_MODEL_RBB_CONTAINER_2_OPA, + ASSET_14BA_MODEL_RBB_CONTAINER_3_OPA, + ASSET_14BB_MODEL_RBB_CAPTIANS_CABIN_OPA, + ASSET_14BC_MODEL_RBB_CAPTIANS_CABIN_XLU, + ASSET_14BD_MODEL_RBB_CREW_CABIN_OPA, + ASSET_14BE_MODEL_RBB_BOSS_BOOM_BOX_OPA, + ASSET_14BF_MODEL_RBB_BOSS_BOOM_BOX_XLU, + ASSET_14C0_MODEL_RBB_NAVIGATION_ROOM_OPA, + ASSET_14C1_MODEL_RBB_STORAGE_ROOM_OPA, + ASSET_14C2_MODEL_RBB_STORAGE_ROOM_XLU, + ASSET_14C3_MODEL_RBB_KITCHEN_OPA, + ASSET_14C4_MODEL_RBB_KITCHEN_XLU, + ASSET_14C5_MODEL_RBB_ANCHOR_ROOM_OPA, + ASSET_14C6_MODEL_RBB_ANCHOR_ROOM_XLU, + ASSET_14C7_MODEL_RBB_NAVIGATION_ROOM_XLU, + ASSET_14C8_MODEL_FP_FREEZEEZY_PEAK_OPA, + ASSET_14C9_MODEL_FP_FREEZEEZY_PEAK_XLU, + ASSET_14CA_MODEL_FP_BOGGYS_IGLOO_OPA, + ASSET_14CB_MODEL_FP_XMAS_TREE_OPA, + ASSET_14CC_MODEL_FP_WOZZAS_CAVE_OPA, + ASSET_14CD_MODEL_FP_WOZZAS_CAVE_XLU, + ASSET_14CE_MODEL_FP_BOGGYS_IGLOO_XLU, + ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA, + ASSET_14D0_MODEL_SM_SPIRAL_MOUNTAIN_XLU, + ASSET_14D1_MODEL_BGS_BUBBLEGLOOP_SWAMP_OPA, + ASSET_14D2_MODEL_BGS_BUBBLEGLOOP_SWAMP_XLU, + ASSET_14D3_MODEL_BGS_MR_VILE_OPA, + ASSET_14D4_MODEL_BGS_TIPTUP_OPA, + ASSET_14D5_MODEL_BGS_TIPTUP_XLU, + ASSET_14D6_MODEL_TEST_MAP_OPA, + ASSET_14D7_MODEL_TEST_MAP_XLU, + ASSET_14D8_MODEL_CCW_HUB_OPA, + ASSET_14D9_MODEL_CCW_SPRING_OPA, + ASSET_14DA_MODEL_CCW_SUMMER_OPA, + ASSET_14DB_MODEL_CCW_AUTUMN_OPA, + ASSET_14DC_MODEL_CCW_WINTER_OPA, + ASSET_14DD_MODEL_CCW_ZUBBA_HIVE_OPA, + ASSET_14DE_MODEL_CCW_NABNUTS_HOUSE_OPA, + ASSET_14DF_MODEL_CCW_WHIPCRACK_ROOM_OPA, + ASSET_14E0_MODEL_CCW_HONEYCOMB_ROOM_OPA, + ASSET_14E1_MODEL_CCW_NABBUTS_STASH_OPA, + ASSET_14E2_MODEL_CCW_NABBUTS_STASH_XLU, + ASSET_14E3_MODEL_CCW_HUB_XLU, + ASSET_14E4_MODEL_CCW_SPRING_XLU, + ASSET_14E5_MODEL_CCW_SUMMER_XLU, + ASSET_14E6_MODEL_CCW_AUTUMN_XLU, + ASSET_14E7_MODEL_CCW_WINTER_XLU, + ASSET_14E8_MODEL_GL_FURNACE_FUN_OPA, + /* [0x14E9.. =0x14EC] empty */ + ASSET_14ED_MODEL_CC_CLANKERS_CAVERN_OPA = 0x14ED, + ASSET_14EE_MODEL_CC_CLANKERS_CAVERN_XLU, + ASSET_14EF_MODEL_CC_WITCH_SWITCH_ROOM_OPA, + ASSET_14F0_MODEL_CC_INSIDE_CLANKER_OPA, + ASSET_14F1_MODEL_CC_INSIDE_CLANKER_XLU, + ASSET_14F2_MODEL_CC_GOLD_FEATHER_ROOM_OPA, + ASSET_14F3_MODEL_GL_MM_LOBBY_OPA, + ASSET_14F4_MODEL_GL_TTC_AND_CC_PUZZLE_OPA, + ASSET_14F5_MODEL_GL_180_NOTE_DOOR_OPA, + ASSET_14F6_MODEL_GL_RED_CAULDRON_ROOM_OPA, + ASSET_14F7_MODEL_GL_TTC_LOBBY_OPA, + ASSET_14F8_MODEL_GL_GV_LOBBY_OPA, + ASSET_14F9_MODEL_GL_FP_LOBBY_OPA, + ASSET_14FA_MODEL_GL_FP_LOBBY_XLU, + ASSET_14FB_MODEL_GL_CC_LOBBY_OPA, + ASSET_14FC_MODEL_GL_BATTLEMENTS_OPA, + ASSET_14FD_MODEL_GL_GV_PUZZLE_OPA, + ASSET_14FE_MODEL_GL_MMM_LOBBY_OPA, + ASSET_14FF_MODEL_GL_CRYPT_OPA, + ASSET_1500_MODEL_GL_STATUE_ROOM_OPA, + ASSET_1501_MODEL_GL_BGS_LOBBY_OPA, + ASSET_1502_MODEL_GL_640_NOTE_DOOR_OPA, + ASSET_1503_MODEL_GL_RBB_LOBBY_OPA, + ASSET_1504_MODEL_RBB_AND_MMM_PUZZLE_OPA, + ASSET_1505_MODEL_GL_CCW_LOBBY_OPA, + ASSET_1506_MODEL_GL_FF_ENTRANCE_OPA, + ASSET_1507_MODEL_GL_CC_LOBBY_XLU, + ASSET_1508_MODEL_GL_640_NOTE_DOOR_XLU, + ASSET_1509_MODEL_GL_RBB_LOBBY_XLU, + ASSET_150A_MODEL_RBB_AND_MMM_PUZZLE_XLU, + ASSET_150B_MODEL_GL_MM_LOBBY_XLU, + ASSET_150C_MODEL_GL_TTC_AND_CC_PUZZLE_XLU, + ASSET_150D_MODEL_GL_RED_CAULDRON_ROOM_XLU, + ASSET_150E_MODEL_GL_STATUE_ROOM_XLU, + ASSET_150F_MODEL_CS_KLUNGOS_LAB_OPA, + ASSET_1510_MODEL_GL_180_NOTE_DOOR_XLU, + ASSET_1511_MODEL_GL_BGS_LOBBY_XLU, + ASSET_1512_MODEL_GL_TTC_LOBBY_XLU, + ASSET_1513_MODEL_CS_KLUNGOS_LAB_XLU, + ASSET_1514_MODEL_GL_FF_ENTRANCE_XLU, + ASSET_1515_MODEL_GL_BATTLEMENTS_XLU }; enum overlay_e{ @@ -3737,9 +4073,10 @@ enum overlay_e{ }; enum marker_e{ - MARKER_5_GRUBLIN = 0x5, - - MARKER_7_CONGA = 0x7, + MARKER_4_TERMITE = 0x4, + MARKER_5_GRUBLIN, + MARKER_6_MUMBO, + MARKER_7_CONGA, MARKER_A_CHIMPY = 0xA, @@ -3759,7 +4096,7 @@ enum marker_e{ MARKER_33_LEAKY, MARKER_34_CEMETARY_POT, - MARKER_36_ORANGE_COLLECTABLE = 0x36, + MARKER_36_ORANGE_COLLECTIBLE = 0x36, MARKER_37_GOLD_BULLION, MARKER_38_TURBO_TALON_TRAINERS, MARKER_39_MUMBO_TOKEN, @@ -3782,26 +4119,32 @@ enum marker_e{ MARKER_55_HONEYCOMB = 0x55, - MARKER_5F_MUSIC_NOTE = 0x5F, - - MARKER_60_BLUE_EGG_COLLECTABLE = 0x60, - MARKER_61_EXTRA_LIFE = 0x61, + MARKER_5A_JINJO_BLUE = 0x5A, + MARKER_5B_JINJO_GREEN, + MARKER_5C_JINJO_ORANGE, + MARKER_5D_JINJO_PINK, + MARKER_5E_JINJO_YELLOW, + MARKER_5F_MUSIC_NOTE, + MARKER_60_BLUE_EGG_COLLECTIBLE, + MARKER_61_EXTRA_LIFE, MARKER_62_RED_ARROW, MARKER_63_RED_QUESTION_MARK, MARKER_64_RED_X, MARKER_65_SHRAPNEL, MARKER_66_ORANGE_PAD, - MARKER_67_JUJU = 0x67, - - MARKER_69_CHUMP_FISH = 0x69, + MARKER_67_JUJU, + MARKER_68_JIGSAW_DANCE, + MARKER_69_CHUMP_FISH, MARKER_6A_GLOOP, MARKER_6B_GLOOPBUBBLE, MARKER_6C_TANKTUP, MARKER_6D_TANKTUP_LEG, MARKER_6E_PINK_EGG_LARGEST, + MARKER_72_FIRE_SPARKLE = 0x72, + MARKER_95_CHIMPY_STUMP = 0x95, - MARKER_96_RIPPER, + MARKER_96_GRAVESTONE, MARKER_97_BOGGY_2, MARKER_99_TEEHEE = 0x99, @@ -3813,8 +4156,8 @@ enum marker_e{ MARKER_A7_MAGIC_CARPET_1, MARKER_A9_RUBEE = 0xA9, - - MARKER_AB_RUBEES_EGG_POT = 0xAB, + MARKER_AA_HISTUP, + MARKER_AB_RUBEES_EGG_POT, MARKER_AD_SLAPPA = 0xAD, @@ -3824,7 +4167,7 @@ enum marker_e{ MARKER_B2_SNOWBALL, MARKER_B3_SIR_SLUSH_HAT, - MARKER_B5_RED_FEATHER_COLLECTABLE = 0xB5, + MARKER_B5_RED_FEATHER_COLLECTIBLE = 0xB5, MARKER_B7_TUTORIAL_BOTTLES = 0xB7, @@ -3856,6 +4199,7 @@ enum marker_e{ MARKER_DB_BURIED_TREASURE, MARKER_DC_BIG_ALLIGATOR, MARKER_DD_BLACK_SNIPPET, + MARKER_DE_BLACK_SNIPPET_UPSIDEDOWN, MARKER_EA_LIGHTHOUSE_DOOR = 0xEA, MARKER_EB_GV_BANJO_DOOR, @@ -3907,6 +4251,8 @@ enum marker_e{ MARKER_168_ICE_KEY, MARKER_169_SNS_EGG, + MARKER_16B_SNIPPET_UPSIDEDOWN = 0x16B, + MARKER_173_CHUMP_FISH_2 = 0x173, MARKER_174_GAME_OVER = 0x174, @@ -3960,7 +4306,7 @@ enum marker_e{ MARKER_1E2_GRUBLIN_HOOD = 0x1E2, - MARKER_1E5_GOLD_FEATHER_COLLECTABLE = 0x1E5, + MARKER_1E5_GOLD_FEATHER_COLLECTIBLE = 0x1E5, MARKER_1E6_TOPPER_B, MARKER_1E7_BAWL_B, MARKER_1E8_COLLYWOBBLE_B, @@ -3975,9 +4321,9 @@ enum marker_e{ MARKER_1FA_POLAR_BEAR_CUB_BLUE, MARKER_1FB_POLAR_BEAR_CUB_GREEN, MARKER_1FC_POLAR_BEAR_CUB_RED, - MARKER_1FD_BLUE_PRESENT_COLLECTABLE, - MARKER_1FE_GREEN_PRESENT_COLLECTABLE, - MARKER_1FF_RED_PRESENT_COLLECTABLE, + MARKER_1FD_BLUE_PRESENT_COLLECTIBLE, + MARKER_1FE_GREEN_PRESENT_COLLECTIBLE, + MARKER_1FF_RED_PRESENT_COLLECTIBLE, MARKER_200_TWINKLY_BLUE, MARKER_201_TWINKLY_GREEN, MARKER_202_TWINKLY_ORANGE, @@ -4047,7 +4393,7 @@ enum marker_e{ MARKER_295_GRUNTLING_BLUE = 0x295, MARKER_296_TEEHEE_PURPLE, - MARKER_297_GIANT_RIPPER, + MARKER_297_GIANT_GRAVESTONE, MARKER_298_MUMMUM_BALL, MARKER_29A_FF_PRIZE = 0x29A, diff --git a/include/functions.h b/include/functions.h index afa8ae28..2f3b07a5 100644 --- a/include/functions.h +++ b/include/functions.h @@ -297,17 +297,11 @@ void func_8028A274(enum asset_e, f32); void func_8028A3B8(f32, f32); int func_8028AED4(f32*, f32); void func_8028E668(f32[3], f32, f32, f32); -f32 func_8028E80C(s32); bool func_8028F364(f32[3], f32, f32, enum actor_e actor_id, Actor**); void func_8028FA54(f32[3]); f32 func_802915D8(void); f32 func_80291604(void); -f32 func_80291670(s32); -f32 func_80291684(s32); -int func_80291698(s32); -int func_80291700(s32, f32); -void func_802917E4(s32, f32); void baModel_80291A50(s32 arg0, f32* arg1); void baModel_80292078(s32, f32); @@ -364,11 +358,11 @@ void func_80299CF4(enum sfx_e, f32, s32); void func_80299D2C(enum sfx_e, f32, s32); void func_80289EC8(f32, f32, f32, f32); void func_80289EF8(f32); -f32 func_8029A900(void); -f32 func_8029A90C(void); -void func_8029A968(f32); -void func_8029A980(s32); -void func_8029A974(f32); +f32 bsStoredState_getLongLegTimer(void); +f32 bsStoredState_getTurboTimer(void); +void bsStoredState_setLongLegTimer(f32); +void bsStoredState_setTrot(bool); +void bsStoredState_setTurboTimer(f32); void func_8029AD28(f32, s32); f32 func_8029B2DC(void); f32 func_8029B2E8(void); diff --git a/include/structs.h b/include/structs.h index bcd55c89..48e8e65d 100644 --- a/include/structs.h +++ b/include/structs.h @@ -839,7 +839,7 @@ typedef struct { typedef struct { - enum actor_e actor_id; + int actor_id; struct actorMarker_s *marker; f32 position[3]; void (*unk14)(struct actor_s *, struct actorMarker_s *); @@ -847,7 +847,7 @@ typedef struct { }Struct81s; typedef struct { - enum actor_e actor_id; + int actor_id; struct actorMarker_s *marker; f32 position[3]; void (*unk14)(struct actor_s *, struct actorMarker_s *); diff --git a/src/BGS/ch/code_8A60.c b/src/BGS/ch/code_8A60.c index badb5b6b..9cc26ab4 100644 --- a/src/BGS/ch/code_8A60.c +++ b/src/BGS/ch/code_8A60.c @@ -10,13 +10,13 @@ void func_8038F06C(Actor *this); ActorAnimationInfo D_80390B90[] = { {0x00, 0.0f}, {0x00, 0.0f}, - {0xD4, 0.15f}, - {0xD5, 0.5f}, + {ASSET_D4_ANIM_SWITCH_DOWN, 0.15f}, + {ASSET_D5_ANIM_SWITCH_UP, 0.5f}, {0x00, 0.0f}, {0x00, 0.0f}, - {0xD4, 0.15f}, - {0xD5, 0.5f}, - {0xD5, 1e+8f} + {ASSET_D4_ANIM_SWITCH_DOWN, 0.15f}, + {ASSET_D5_ANIM_SWITCH_UP, 0.5f}, + {ASSET_D5_ANIM_SWITCH_UP, 1e+8f} }; ActorInfo D_80390BD8 = {MARKER_F5_BGS_ELEVATED_WALKWAY_SWITCH, ACTOR_14E_BGS_ELEVATED_WALKWAY_SWITCH, ASSET_3F5_BGS_JIGGY_SWITCH, 1, D_80390B90, func_8038EEA4, func_80326224, func_80325888, 0, 0, 0.0f, 0}; ActorInfo D_80390BFC = {MARKER_FD_BGS_MAZE_SWITCH, ACTOR_1FB_BGS_MAZE_SWITCH, ASSET_3F5_BGS_JIGGY_SWITCH, 1, D_80390B90, func_8038F06C, func_80326224, func_80325888, 0, 0, 0.0f, 0}; diff --git a/src/BGS/ch/mudhut.c b/src/BGS/ch/mudhut.c index 77cadc23..1dd87ae6 100644 --- a/src/BGS/ch/mudhut.c +++ b/src/BGS/ch/mudhut.c @@ -1,9 +1,12 @@ #include #include "functions.h" #include "variables.h" +#include "core2/statetimer.h" /* TODO move declarations to respective headers*/ -void func_8028F710(s32, f32); +extern void player_stateTimer_set(enum state_timer_e, f32); +extern f32 player_stateTimer_get(enum state_timer_e); + void func_802C4218(u32,f32,f32,f32); void func_80328A84(Actor *, u32); @@ -17,8 +20,8 @@ void chmudhut_update(Actor *this); ActorAnimationInfo D_80390B30[4] = { {0, 0.0f}, {0, 0.0f}, - {anim_mudhut_smashing, 0.25f}, - {anim_mudhut_smashing, 1000000.0f} + {ASSET_4E_ANIM_MUDHUT_SMASH, 0.25f}, + {ASSET_4E_ANIM_MUDHUT_SMASH, 1000000.0f} }; u32 D_80390B50[6] = {0xA, 0xA, 0xB, 0xA, 0xA, 0xC}; @@ -30,8 +33,8 @@ ActorInfo D_80390B68 = {MARKER_D5_BGS_MUD_HUT, ACTOR_C_MUD_HUT, ASSET_7D8_MODEL_ /* .code section */ void func_8038EA30(void){ - if((getGameMode() != GAME_MODE_7_ATTRACT_DEMO) && (1.5 < func_8028E80C(2)) ){ - func_8028F710(2, 1.5); + if((getGameMode() != GAME_MODE_7_ATTRACT_DEMO) && (1.5 < player_stateTimer_get(2)) ){ + player_stateTimer_set(STATE_TIMER_2_LONGLEG, 1.5); } } diff --git a/src/BGS/code_3420.c b/src/BGS/code_3420.c index 8a00bd08..4d150523 100644 --- a/src/BGS/code_3420.c +++ b/src/BGS/code_3420.c @@ -621,7 +621,7 @@ void chvilegame_update(Actor *this) { item_set(ITEM_1A_PLAYER_VILE_SCORE, local->player_score); item_set(ITEM_1B_VILE_VILE_SCORE, local->vile_score); if ((sp2C != 0) && (local->player_score == 0)) { - func_802FA5D0(); + itemPrint_reset(); } if (item_empty(ITEM_6_HOURGLASS)) { if (func_803203FC(2)) { diff --git a/src/FP/ch/bearcub.c b/src/FP/ch/bearcub.c index b27fff19..dd9dcea6 100644 --- a/src/FP/ch/bearcub.c +++ b/src/FP/ch/bearcub.c @@ -41,9 +41,9 @@ ActorInfo D_80391E50 = { MARKER_1FC_POLAR_BEAR_CUB_RED, ACTOR_1EC_POLAR_BEAR_CUB f32 FP_D_80391E74[3] = {-5.0f, 180.0f, 1.0f}; Struct_FP_3E00 D_80391E80[] ={ - {0x11, MARKER_1FD_BLUE_PRESENT_COLLECTABLE, ACTOR_1ED_BLUE_PRESENT_COLLECTABLE, 0x1EE}, - {0x12, MARKER_1FE_GREEN_PRESENT_COLLECTABLE, ACTOR_1EF_GREEN_PRESENT_COLLECTABLE, 0x1F0}, - {0x13, MARKER_1FF_RED_PRESENT_COLLECTABLE, ACTOR_1F1_RED_PRESENT_COLLECTABLE, 0x1F2} + {0x11, MARKER_1FD_BLUE_PRESENT_COLLECTIBLE, ACTOR_1ED_BLUE_PRESENT_COLLECTIBLE, 0x1EE}, + {0x12, MARKER_1FE_GREEN_PRESENT_COLLECTIBLE, ACTOR_1EF_GREEN_PRESENT_COLLECTIBLE, 0x1F0}, + {0x13, MARKER_1FF_RED_PRESENT_COLLECTIBLE, ACTOR_1F1_RED_PRESENT_COLLECTIBLE, 0x1F2} }; /* .code */ diff --git a/src/FP/ch/present.c b/src/FP/ch/present.c index de650c9b..daef1098 100644 --- a/src/FP/ch/present.c +++ b/src/FP/ch/present.c @@ -7,7 +7,7 @@ void func_8038F144(Actor *this); /* .data */ ActorAnimationInfo D_803924A0[] = { {0, 0.0f}, - {ASSET_18A_XMAS_GIFT, 1.5f} + {ASSET_18A_ANIM_XMAS_GIFT, 1.5f} }; ActorInfo D_803924B0 = { MARKER_208_BLUE_PRESENT, ACTOR_33A_BLUE_PRESENT, ASSET_47F_MODEL_XMAS_GIFT_BLUE, diff --git a/src/FP/racectrl.c b/src/FP/racectrl.c index 5030c569..319251c6 100644 --- a/src/FP/racectrl.c +++ b/src/FP/racectrl.c @@ -2,7 +2,9 @@ #include "functions.h" #include "variables.h" -extern void func_8028F710(s32, f32); + +#include "core2/statetimer.h" +extern void player_stateTimer_set(s32, f32); typedef struct { ActorMarker *marker; @@ -265,7 +267,7 @@ void func_8038B2C8(ActorMarker *caller, enum asset_e text_id, s32 arg2){ void func_8038B39C(void){ if(jiggyscore_isCollected(JIGGY_30_FP_BOGGY_2) && func_8028ECAC() == BSGROUP_6_TURBO_TALON_TRAINERS){ - func_8028F710(3, 2.0f); + player_stateTimer_set(STATE_TIMER_3_TURBO_TALON, 2.0f); } func_8028F918(1); func_8025A6EC(COMUSIC_3B_MINIGAME_VICTORY, 28000); @@ -323,7 +325,7 @@ void func_8038B544(void){ case 2: //L8038B61C if(jiggyscore_isCollected(JIGGY_30_FP_BOGGY_2) && func_8028ECAC() == BSGROUP_6_TURBO_TALON_TRAINERS){ - func_8028F710(3, 20.0f); + player_stateTimer_set(STATE_TIMER_3_TURBO_TALON, 20.0f); } if(D_80392F70[0x26].marker == NULL) break; diff --git a/src/GV/ch/histup.c b/src/GV/ch/histup.c index 9d657e76..fb9b8aa5 100644 --- a/src/GV/ch/histup.c +++ b/src/GV/ch/histup.c @@ -12,14 +12,14 @@ Actor *func_8038DA18(ActorMarker *this_marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); /* .data */ ActorAnimationInfo D_803912E0[] = { {0x00, 0.0f}, - {0xD1, 800000.0f}, - {0xE2, 2.0f}, - {0xD1, 800000.0f}, - {0xD0, 6.0f}, - {0xCF, 2.0f}, - {0xD1, 1.6f}, + {ASSET_D1_ANIM_HISTUP_HIDE, 800000.0f}, + {ASSET_E2_ANIM_HISTUP_PEEK, 2.0f}, + {ASSET_D1_ANIM_HISTUP_HIDE, 800000.0f}, + {ASSET_D0_ANIM_HISTUP_GROW, 6.0f}, + {ASSET_CF_ANIM_HISTUP_RAISED, 2.0f}, + {ASSET_D1_ANIM_HISTUP_HIDE, 1.6f}, }; -ActorInfo D_80391318 = { 0xAA, 0x11C, 0x3DE, +ActorInfo D_80391318 = { MARKER_AA_HISTUP, ACTOR_11C_HISTUP, ASSET_3DE_MODEL_HISTUP, 0x1, D_803912E0, func_8038DBDC, func_80326224, func_8038DA18, 2500, 0, 1.7f, 0 diff --git a/src/GV/code_3630.c b/src/GV/code_3630.c index 7bf4a338..cf1c9a9f 100644 --- a/src/GV/code_3630.c +++ b/src/GV/code_3630.c @@ -7,11 +7,11 @@ void func_80389B1C(Actor *this); /* .data */ ActorAnimationInfo D_80390EA0[] = { {0x00, 0.0f}, - {0xDF, 4.5f}, - {0xE3, 2.0f}, - {0xE4, 1.95f}, - {0xCE, 2.4f}, - {0xDF, 4.5f} + {ASSET_DF_ANIM_RUBEE_PET_TOOTS, 4.5f}, + {ASSET_E3_ANIM_RUBEE_IDLE, 2.0f}, + {ASSET_E4_ANIM_RUBEE_PLAY, 1.95f}, + {ASSET_CE_ANIM_RUBEE_STOP_PLAYING, 2.4f}, + {ASSET_DF_ANIM_RUBEE_PET_TOOTS, 4.5f} }; ActorInfo D_80390ED0 = { MARKER_A9_RUBEE, ACTOR_11B_RUBEE, ASSET_3DD_MODEL_RUBEE, diff --git a/src/GV/code_3B10.c b/src/GV/code_3B10.c index f5e553ff..3308af36 100644 --- a/src/GV/code_3B10.c +++ b/src/GV/code_3B10.c @@ -2,7 +2,9 @@ #include "functions.h" #include "variables.h" -extern void func_8028F710(s32, f32); +#include "core2/statetimer.h" +extern void player_stateTimer_set(s32, f32); +extern f32 player_stateTimer_get(enum state_timer_e); /* .data */ //TODO Implement CRC calculation in Makefile(?) @@ -13,8 +15,8 @@ u32 D_80390F38 = 0x0003031C; //GV.data CRC1 (with this value = 0) /* .code */ void func_80389F00(void){ - if(getGameMode() != GAME_MODE_7_ATTRACT_DEMO && 2.0f < func_8028E80C(3)){ - func_8028F710(3, 2.0f); + if(getGameMode() != GAME_MODE_7_ATTRACT_DEMO && 2.0f < player_stateTimer_get(STATE_TIMER_3_TURBO_TALON)){ + player_stateTimer_set(STATE_TIMER_3_TURBO_TALON, 2.0f); } } diff --git a/src/GV/code_3D90.c b/src/GV/code_3D90.c index 02901acb..23826d4e 100644 --- a/src/GV/code_3D90.c +++ b/src/GV/code_3D90.c @@ -12,11 +12,11 @@ Actor *func_8038A180(ActorMarker *this_marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); /* .data */ ActorAnimationInfo D_80390FA0[] = { {0, 0.0f}, - {0xC9, 2.0f}, - {0xC9, 2.0f}, - {0xC9, 2.0f}, - {0xC9, 2.0f}, - {0xC9, 2.0f}, + {ASSET_C9_ANIM_MAGIC_CARPET, 2.0f}, + {ASSET_C9_ANIM_MAGIC_CARPET, 2.0f}, + {ASSET_C9_ANIM_MAGIC_CARPET, 2.0f}, + {ASSET_C9_ANIM_MAGIC_CARPET, 2.0f}, + {ASSET_C9_ANIM_MAGIC_CARPET, 2.0f}, }; ActorInfo D_80390FD0 = { MARKER_B0_MAGIC_CARPET_2, ACTOR_123_MAGIC_CARPET_2, ASSET_3DC_MODEL_MAGIC_CARPET, 0x1, D_80390FA0, @@ -35,7 +35,7 @@ Actor *func_8038A180(ActorMarker *this_marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){ if( this->unk54 == 0.0f && this->unk48 != this->unk1C[1] && this_marker->unk14_21 - && func_80329530(this, 0xbb8) + && func_80329530(this, 3000) ){ func_8033E73C(this->marker, 6, func_80329904); func_8033E3F0(0xc, this->marker->unk14_21); diff --git a/src/GV/code_43B0.c b/src/GV/code_43B0.c index 68f96fdc..71b31287 100644 --- a/src/GV/code_43B0.c +++ b/src/GV/code_43B0.c @@ -13,7 +13,7 @@ Actor *func_8038A7A0(ActorMarker *this_marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); /* .data */ ActorAnimationInfo D_80391000[] = { {0, 0.0f}, - {0xC9, 2.0f} + {ASSET_C9_ANIM_MAGIC_CARPET, 2.0f} }; ActorInfo D_80391010 = { MARKER_A7_MAGIC_CARPET_1, ACTOR_119_MAGIC_CARPET_1, ASSET_3DC_MODEL_MAGIC_CARPET, @@ -101,7 +101,7 @@ void GV_func_8038A9C0(Actor *this){ } this->unk1C[2] = this->unk1C[1]; this->unk1C[1] = this->unk48; - if(this->unk100 && sp24 && this->unk100->unk14_20 == MARKER_AF_MAGIC_CARPET_SHADOW){ + if(this->unk100 != NULL && sp24 != NULL && this->unk100->unk14_20 == MARKER_AF_MAGIC_CARPET_SHADOW){ sp24->unk1C[0] = func_8038A860(sp24, this); } } diff --git a/src/GV/code_4740.c b/src/GV/code_4740.c index cf92f477..f709ceeb 100644 --- a/src/GV/code_4740.c +++ b/src/GV/code_4740.c @@ -124,7 +124,7 @@ void func_8038AFF4(ActorMarker *this_marker, ActorMarker *other_marker){ Actor *this = marker_getActor(this_marker); func_8032B4DC(this, other_marker, 0xC); actor_collisionOff(this); - func_80328B8C(this, ASSET_9_ANIM_BANJO_DIE, 0.00001f, 1); + func_80328B8C(this, ASSET_9_ANIM_BSDIE, 0.00001f, 1); actor_playAnimationOnce(this); this->unk1C[0] = 0.0f; func_8030E878(SFX_D7_GRABBA_DEATH, 1.0f, 32000, this->position, 2250.0f, 4500.0f); diff --git a/src/GV/code_5570.c b/src/GV/code_5570.c index 58537fca..3ffde009 100644 --- a/src/GV/code_5570.c +++ b/src/GV/code_5570.c @@ -3,7 +3,9 @@ #include "variables.h" extern void func_8025AE50(s32, f32); -extern void func_8028F710(s32, f32); + +#include "core2/statetimer.h" +extern void player_stateTimer_set(s32, f32); typedef struct { s32 unk0; @@ -59,7 +61,7 @@ void func_8038BA08(Actor *this){ this->unk100 = NULL; D_80391A80 = 3; if(func_8028ECAC() == BSGROUP_6_TURBO_TALON_TRAINERS) - func_8028F710(3, 0.0f); + player_stateTimer_set(STATE_TIMER_3_TURBO_TALON, 0.0f); func_80311480(ASSET_A79_TEXT_GRABBA_DEFEAT, 0xf, this->position, this->marker, func_8038B988, NULL); comusic_8025AB44(COMUSIC_57_TURBO_TRAINERS, 7000, 700); diff --git a/src/MM/ch/conga.c b/src/MM/ch/conga.c index 247c9a43..f2172baa 100644 --- a/src/MM/ch/conga.c +++ b/src/MM/ch/conga.c @@ -44,7 +44,7 @@ ActorAnimationInfo chCongaAnimations[9] = { {ASSET_54_ANIM_CONGA_THROW, 1.4f}, {ASSET_55_ANIM_CONGA_BEAT_CHEST, 0.4f}, {ASSET_56_ANIM_CONGA_RAISE_ARMS, 0.9f}, - {0xA2, 1.6f}, + {ASSET_A2_ANIM_CONGA_THROW_2, 1.6f}, {ASSET_52_ANIM_CONGA_OW, 1.0f} }; @@ -223,7 +223,7 @@ void func_803876D0(Actor *this){ func_80304D4C(sp40, &((ActorLocal_Conga *)&this->local)->unk10); } if(0.0f == this->unk28){ - this->unk28 = (actorArray_findActorFromMarkerId(MARKER_36_ORANGE_COLLECTABLE) != NULL)? 2.0f: 1.0f; + this->unk28 = (actorArray_findActorFromMarkerId(MARKER_36_ORANGE_COLLECTIBLE) != NULL)? 2.0f: 1.0f; } if(0.0f != this->velocity_x){ this->velocity_x -= 1.0f; diff --git a/src/MM/ch/grublin.c b/src/MM/ch/grublin.c index 9b345c80..13acdf18 100644 --- a/src/MM/ch/grublin.c +++ b/src/MM/ch/grublin.c @@ -28,16 +28,16 @@ void func_80388A80(Actor *); /* .data */ ActorAnimationInfo chGrublinAnimations[11] = { {0, 0.0f}, - {0x62, 4.0f}, - {0x62, 0.7f}, - {0x63, 0.7f}, - {0x64, 0.9f}, + {ASSET_62_ANIM_GRUBLIN_IDLE, 4.0f}, + {ASSET_62_ANIM_GRUBLIN_IDLE, 0.7f}, + {ASSET_63_ANIM_GRUBLIN_WALK, 0.7f}, + {ASSET_64_ANIM_GRUBLIN_JUMP, 0.9f}, {ASSET_94_ANIM_GRUBLIN_DIE, 1.0f}, - {0x62, 1.5f}, - {0x63, 0.5f}, - {0x62, 1.5f}, - {0x62, 1000000.0f}, - {0x62, 1000000.0f} + {ASSET_62_ANIM_GRUBLIN_IDLE, 1.5f}, + {ASSET_63_ANIM_GRUBLIN_WALK, 0.5f}, + {ASSET_62_ANIM_GRUBLIN_IDLE, 1.5f}, + {ASSET_62_ANIM_GRUBLIN_IDLE, 1000000.0f}, + {ASSET_62_ANIM_GRUBLIN_IDLE, 1000000.0f} }; ActorInfo chgrublinInfo = { MARKER_5_GRUBLIN, ACTOR_6_GRUBLIN, ASSET_3C5_MODEL_GRUBLIN, diff --git a/src/MM/ch/hut.c b/src/MM/ch/hut.c index 505bc33b..9afbbe46 100644 --- a/src/MM/ch/hut.c +++ b/src/MM/ch/hut.c @@ -23,19 +23,10 @@ extern s32 D_8037DCB0; //mm_hut_smash_count /* .data */ ActorAnimationInfo chhutAnimations[3] = { {0, 0.0f}, - {0x4E, 0.25f}, - {0x4E, 1000000.0f} + {ASSET_4E_ANIM_MUDHUT_SMASH, 0.25f}, + {ASSET_4E_ANIM_MUDHUT_SMASH, 1000000.0f} }; -s32 D_803898D8[6] = { 0, 1, 2, 3, 6, 4}; - -ActorInfo chhutInfo = { MARKER_51_MM_HUT, ACTOR_9_MM_HUT, ASSET_7D7_MODEL_MM_HUT, - 0, chhutAnimations, - chhut_update, func_80326224, chhut_draw, - 0, 0x100, 0.0f, 0 -}; - - /* .code */ Actor *chhut_draw(ActorMarker *this, Gfx **arg1, Mtx **arg2, Vtx **arg3){ Actor *actorPtr; @@ -64,6 +55,7 @@ void func_803869EC(ActorMarker *this){ } void chhut_update(Actor *this){ + static s32 D_803898D8[6] = { 0, 1, 2, 3, 6, 4}; f32 sp3C[3]; f32 sp30[3]; @@ -119,3 +111,9 @@ void chhut_update(Actor *this){ void mm_resetHuts(void){ D_8037DCB0 = 0; } + +ActorInfo chhutInfo = { MARKER_51_MM_HUT, ACTOR_9_MM_HUT, ASSET_7D7_MODEL_MM_HUT, + 0, chhutAnimations, + chhut_update, func_80326224, chhut_draw, + 0, 0x100, 0.0f, 0 +}; diff --git a/src/MM/ch/lmonkey.c b/src/MM/ch/lmonkey.c index 5214a5d4..28c91d10 100644 --- a/src/MM/ch/lmonkey.c +++ b/src/MM/ch/lmonkey.c @@ -12,28 +12,28 @@ s32 func_8028F31C(f32 *, f32, s32, Actor **); void func_8028FA34(s32, Actor *); -void func_803885D0(Actor *); +void chLMonkey_update(Actor *); /* .data */ ActorAnimationInfo chlmonkeyAnimations[5] = { {0, 0.0f}, - {0x5C, 2.3f}, - {0x5B, 0.67f}, - {0x5D, 0.5f}, - {0x5C, 2.3f} + {ASSET_5C_ANIM_CHIMPY_IDLE, 2.3f}, + {ASSET_5B_ANIM_CHIMPY_JUMP, 0.67f}, + {ASSET_5D_ANIM_CHIMPY_WALK, 0.5f}, + {ASSET_5C_ANIM_CHIMPY_IDLE, 2.3f} }; ActorInfo chlmonkeyInfo = { MARKER_A_CHIMPY, ACTOR_F_CHIMPY, ASSET_35D_MODEL_CHIMPY, 1, chlmonkeyAnimations, - NULL, func_803885D0, func_80325888, + NULL, chLMonkey_update, func_80325888, 2500, 0, 0.8f, 0 }; /* .code */ void func_80388300(Actor **arg0){ - func_8028F31C((*arg0)->position, 800.0f, ACTOR_29_ORANGE_COLLECTABLE, arg0); - if( func_80329530(*arg0, 0x159) - && carriedObj_getMarkerId() == MARKER_36_ORANGE_COLLECTABLE + func_8028F31C((*arg0)->position, 800.0f, ACTOR_29_ORANGE_COLLECTIBLE, arg0); + if( func_80329530(*arg0, 345) + && carriedObj_getMarkerId() == MARKER_36_ORANGE_COLLECTIBLE && func_8028FC34() ){ func_8028FA34(0xc6, *arg0); @@ -61,30 +61,30 @@ void MM_func_803883AC(Actor *this){ } } -void func_803884C0(s32 x, s32 y, s32 z){ +void __chLMonkey_spawnJiggy(s32 x, s32 y, s32 z){ f32 sp1C[3]; TUPLE_ASSIGN(sp1C, x, y, z); jiggySpawn(JIGGY_9_MM_CHIMPY, sp1C); } -void func_80388514(ActorMarker *marker, enum asset_e arg1, s32 arg2){ +void __chLMonkey_complete(ActorMarker *marker, enum asset_e arg1, s32 arg2){ Actor * actor = marker_getActor(marker); mapSpecificFlags_set(4,1); func_80328A84(actor, 3); timed_setCameraToNode(2.3f, 0x12); - timedFunc_set_3(2.9f,func_803884C0, actor->position_x, actor->position_y + 150.0f, actor->position_z); + timedFunc_set_3(2.9f,__chLMonkey_spawnJiggy, actor->position_x, actor->position_y + 150.0f, actor->position_z); func_80324E88(4.3f); func_80324E38(4.3f, 0); } -void func_803885D0(Actor *this){ +void chLMonkey_update(Actor *this){ func_8028E668(this->position, 35.0f, 0.0f, 65.0f); actor_collisionOff(this); this->marker->propPtr->unk8_3 = 1; if(map_get() != MAP_2_MM_MUMBOS_MOUNTAIN){ func_80343DEC(this); }else{//L80388630 - if(func_80329530(this, 0x2BC) && !func_803114B0()){ + if(func_80329530(this, 700) && !func_803114B0()){ MM_func_803883AC(this); }//L8038865C switch(this->state){ @@ -92,18 +92,18 @@ void func_803885D0(Actor *this){ if(mapSpecificFlags_get(2)){ func_80328A84(this, 4); if(!jiggyscore_isCollected(JIGGY_9_MM_CHIMPY)){ - func_80311480(0xB40, 0xE, this->position, this->marker, func_80388514, NULL); + func_80311480(ASSET_B40_DIALOG_CHIMPY_COMPLETE, 0xE, this->position, this->marker, __chLMonkey_complete, NULL); }else{//L803886E8 - func_80388514(this->marker, 0xB40, -1); + __chLMonkey_complete(this->marker, ASSET_B40_DIALOG_CHIMPY_COMPLETE, -1); }//L80388898 }else{ func_80388300(&this); - if( func_80329530(this, 0x159) - && !func_80329530(this, 0x96) + if( func_80329530(this, 345) + && !func_80329530(this, 150) && !item_getCount(ITEM_19_ORANGE) && !this->unk138_24 ){ - func_80311480(0xb3f, 0xe, this->position, NULL, NULL, NULL); + func_80311480(ASSET_B3F_DIALOG_CHIMPY_MEET, 0xe, this->position, NULL, NULL, NULL); this->unk138_24 = 1; }//L80388774 actor_loopAnimation(this); diff --git a/src/MMM/ch/motzhand.c b/src/MMM/ch/motzhand.c index 3ab6798b..2ce9a176 100644 --- a/src/MMM/ch/motzhand.c +++ b/src/MMM/ch/motzhand.c @@ -35,16 +35,16 @@ void chMotzhand_setState(Actor *this, s32 next_state){ ActorLocal_Motzhand * local = (ActorLocal_Motzhand *) &this->local; if(next_state == 1 && this->state == 0){ - func_80335924(this->unk148, 0xa7, 0.0f, 1.8f); + func_80335924(this->unk148, ASSET_A7_ANIM_MOTZHAND_IDLE, 0.0f, 1.8f); func_80387410(this->position); } if(next_state == 2){ - func_80335924(this->unk148, 0xA7, 0.9f, 1.8f); + func_80335924(this->unk148, ASSET_A7_ANIM_MOTZHAND_IDLE, 0.9f, 1.8f); } if(next_state == 3){ - func_80335924(this->unk148, 0xA8, 0.9f, 1.8f); + func_80335924(this->unk148, ASSET_A8_ANIM_MOTZHAND_PLAY, 0.9f, 1.8f); } if(next_state == 4){ diff --git a/src/MMM/ch/napper.c b/src/MMM/ch/napper.c index cee15ac1..47bdd698 100644 --- a/src/MMM/ch/napper.c +++ b/src/MMM/ch/napper.c @@ -29,7 +29,7 @@ void __chnapper_setState(Actor *this, s32 next_state){ local->unk4 = 0.0f; actor_collisionOff(this); if(next_state == 1) - func_80335924(this->unk148, ASSET_A3_ANIM_NAPPER_SLEEPING, 0.2f, 2.5f); + func_80335924(this->unk148, ASSET_A3_ANIM_NAPPER_ASLEEP, 0.2f, 2.5f); if(next_state == 2){ func_80335924(this->unk148, ASSET_A4_ANIM_NAPPER_AWAKE, 0.2f, 5.0f); @@ -39,7 +39,7 @@ void __chnapper_setState(Actor *this, s32 next_state){ } if(next_state == 3){ - func_80335924(this->unk148, 0xA5, 0.2f, 1.5f); + func_80335924(this->unk148, ASSET_A5_ANIM_NAPPER_WALK, 0.2f, 1.5f); func_80335A8C(this->unk148, 2); func_8030E484(SFX_41_MUMBO_ERGHHH); } @@ -50,7 +50,7 @@ void __chnapper_setState(Actor *this, s32 next_state){ } if(next_state == 5){ - func_80335924(this->unk148, 0xA6, 2.0f, 4.0f); + func_80335924(this->unk148, ASSET_A6_ANIM_NAPPER_ALERT, 2.0f, 4.0f); actor_collisionOn(this); local->jiggy_marker->collidable = FALSE; } diff --git a/src/SM/ch/vegetables.c b/src/SM/ch/vegetables.c index 8342551c..9723dabe 100644 --- a/src/SM/ch/vegetables.c +++ b/src/SM/ch/vegetables.c @@ -246,7 +246,7 @@ void func_80387E64(Actor *this){ void func_80387F00(Actor *this){ ChVeg *local = (ChVeg *)&this->local; - this->position_y += (mapSpecificFlags_get(0xC) || func_803203FC(0xC1, this)) ? 120.0 : 180.0; + this->position_y += (mapSpecificFlags_get(0xC) || func_803203FC(0xC1)) ? 120.0 : 180.0; local->unk0_x = this->position_x; local->unk0_y = this->position_y; local->unk0_z = this->position_z; diff --git a/src/TTC/ch/blubber.c b/src/TTC/ch/blubber.c index c375e471..18432020 100644 --- a/src/TTC/ch/blubber.c +++ b/src/TTC/ch/blubber.c @@ -22,11 +22,11 @@ Actor *func_80387D6C(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); /* .data */ ActorAnimationInfo D_8038C4E0[] = { {0x00, 0.0f}, - {0xB5, 2.0f}, - {0xB6, 2.0f}, - {0xB6, 2.0f}, - {0xB7, 1.4f}, - {0xB8, 0.8f} + {ASSET_B5_ANIM_BLUBBER_WALK, 2.0f}, + {ASSET_B6_ANIM_BLUBBER_CRY, 2.0f}, + {ASSET_B6_ANIM_BLUBBER_CRY, 2.0f}, + {ASSET_B7_ANIM_BLUBBER_DANCE, 1.4f}, + {ASSET_B8_ANIM_BLUBBER_RUN, 0.8f} }; ActorInfo TTC_D_8038C510 = { diff --git a/src/TTC/ch/clam.c b/src/TTC/ch/clam.c index c68e5782..0a2a83ad 100644 --- a/src/TTC/ch/clam.c +++ b/src/TTC/ch/clam.c @@ -11,9 +11,9 @@ void chClam_update(Actor *this); /* .data */ ActorAnimationInfo chClamAnimations[] = { {0x00, 0.0f}, - {0xAA, 2.0f}, - {0x24, 1.0f}, - {0xAB, 0.6f} + {ASSET_AA_ANIM_CLAM_IDLE, 2.0f}, + {ASSET_24_ANIM_CLAM_HOP, 1.0f}, + {ASSET_AB_ANIM_CLAM_EAT, 0.6f} }; ActorInfo chClam = { @@ -196,7 +196,7 @@ void __chClam_emitSmallShellParticles(f32 position[3], s32 count){ particleEmitter_emitN(pCtrl, count); } -void __chClam_emitEatenCollectableParticles(f32 position[3], enum asset_e sprite_id, s32 count){ +void __chClam_emitEatencollectibleParticles(f32 position[3], enum asset_e sprite_id, s32 count){ static struct31s D_8038C484 = { {0.2f, 0.35f}, {0.0f, 0.0f}, @@ -282,7 +282,7 @@ void chClam_update(Actor *this){ sp44 = sp4C->marker->unk14_20; } - if(sp44 == MARKER_60_BLUE_EGG_COLLECTABLE || sp44 == 0xb5){ + if(sp44 == MARKER_60_BLUE_EGG_COLLECTIBLE || sp44 == MARKER_B5_RED_FEATHER_COLLECTIBLE){ if(this->position_y <= sp48 + 15.0f && sp48 - 15.0f <= this->position_y){ this->position_y = sp48; this->unk38_31 = sp44; @@ -351,11 +351,11 @@ void chClam_update(Actor *this){ func_8034A174(this->marker->unk44, 5, sp38); switch(this->unk38_31){ - case MARKER_60_BLUE_EGG_COLLECTABLE: - __chClam_emitEatenCollectableParticles(sp38, ASSET_718_SPRITE_SPARKLE_WHITE_2, 8); + case MARKER_60_BLUE_EGG_COLLECTIBLE: + __chClam_emitEatencollectibleParticles(sp38, ASSET_718_SPRITE_SPARKLE_WHITE_2, 8); break; - case MARKER_B5_RED_FEATHER_COLLECTABLE: - __chClam_emitEatenCollectableParticles(sp38, ASSET_715_SPRITE_SPARKLE_RED, 8); + case MARKER_B5_RED_FEATHER_COLLECTIBLE: + __chClam_emitEatencollectibleParticles(sp38, ASSET_715_SPRITE_SPARKLE_RED, 8); break; } break; diff --git a/src/TTC/ch/lockup.c b/src/TTC/ch/lockup.c index e763fa9b..ab792630 100644 --- a/src/TTC/ch/lockup.c +++ b/src/TTC/ch/lockup.c @@ -15,11 +15,11 @@ void func_80389600(Actor *this); /* .data */ ActorAnimationInfo D_8038C760[] ={ {0, 0.0f}, - {0xBC, 8000000.0f}, - {0xBC, 4.0f}, - {0xBC, 8000000.0f}, - {0xBC, 1.4f}, - {0xBC, 8000000.0f} + {ASSET_BC_ANIM_LOCKUP, 8000000.0f}, + {ASSET_BC_ANIM_LOCKUP, 4.0f}, + {ASSET_BC_ANIM_LOCKUP, 8000000.0f}, + {ASSET_BC_ANIM_LOCKUP, 1.4f}, + {ASSET_BC_ANIM_LOCKUP, 8000000.0f} }; ActorInfo D_8038C790 = { diff --git a/src/TTC/ch/nipper.c b/src/TTC/ch/nipper.c index 4cd929ab..aacf8a39 100644 --- a/src/TTC/ch/nipper.c +++ b/src/TTC/ch/nipper.c @@ -9,12 +9,12 @@ Actor *func_80387EB0(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); /* .data */ ActorAnimationInfo D_8038C540[] = { {0x00, 0.0f}, - {0xC0, 2.0f}, - {0xBD, 1.5f}, - {0xBF, 1.2f}, - {0xBE, 1.3f}, - {0xC0, 2.0f}, - {0x133, 3.0f}, + {ASSET_C0_ANIM_NIPPER_IDLE, 2.0f}, + {ASSET_BD_ANIM_NIPPER_VULNERABLE, 1.5f}, + {ASSET_BF_ANIM_NIPPER_ATTACK, 1.2f}, + {ASSET_BE_ANIM_NIPPER_OW, 1.3f}, + {ASSET_C0_ANIM_NIPPER_IDLE, 2.0f}, + {ASSET_133_ANIM_NIPPER_DIE, 3.0f}, {0x00, 0.0f} }; diff --git a/src/core2/ba/marker.c b/src/core2/ba/marker.c index 4edb689f..69453d42 100644 --- a/src/core2/ba/marker.c +++ b/src/core2/ba/marker.c @@ -292,19 +292,19 @@ void __baMarker_resolveCollision(Prop *other_prop){ } break; - case MARKER_B5_RED_FEATHER_COLLECTABLE: //L8028BEF4 + case MARKER_B5_RED_FEATHER_COLLECTIBLE: //L8028BEF4 if(__baMarker_8028BC20(marker) != HITBOX_0_NONE) return; - if(chcollectable_collectRedFeather(other_prop)){ + if(chCollectible_collectRedFeather(other_prop)){ marker_despawn(marker); } break; - case MARKER_1E5_GOLD_FEATHER_COLLECTABLE: //L8028BF24 + case MARKER_1E5_GOLD_FEATHER_COLLECTIBLE: //L8028BF24 if(__baMarker_8028BC20(marker)) return; - if(chcollectable_collectGoldFeather(other_prop)){ + if(chCollectible_collectGoldFeather(other_prop)){ marker_despawn(marker); } break; @@ -676,10 +676,10 @@ void __baMarker_resolveCollision(Prop *other_prop){ marker_despawn(marker); break; - case MARKER_60_BLUE_EGG_COLLECTABLE: //L8028CCF0 + case MARKER_60_BLUE_EGG_COLLECTIBLE: //L8028CCF0 if(__baMarker_8028BC20(marker)) return; - if(chcollectable_collectEgg(other_prop)){ + if(chCollectible_collectEgg(other_prop)){ marker_despawn(marker); } break; @@ -734,7 +734,7 @@ void __baMarker_resolveCollision(Prop *other_prop){ case MARKER_11_WADING_BOOTS: //L8028CE8C if(__baMarker_8028BC20(marker)) return; - if(_player_getTransformation() != TRANSFORM_1_BANJO) + if(bsStoredState_getTransformation() != TRANSFORM_1_BANJO) return; if(func_8028F170()) return; @@ -754,7 +754,7 @@ void __baMarker_resolveCollision(Prop *other_prop){ if(__baMarker_8028BC20(marker)) return; - tmp1 = _player_getTransformation(); + tmp1 = bsStoredState_getTransformation(); if(tmp1 != TRANSFORM_1_BANJO && tmp1 != TRANSFORM_5_CROC) return; @@ -834,19 +834,19 @@ void __baMarker_resolveCollision(Prop *other_prop){ case 0x6D7: //L8028D16C if(!__baMarker_8028BC60()){ other_prop->spriteProp.unk8_4 = 0; - chcollectable_collectEgg(other_prop); + chCollectible_collectEgg(other_prop); } break; case 0x580: //L8028D194 if(!__baMarker_8028BC60()){ other_prop->spriteProp.unk8_4 = 0; - chcollectable_collectRedFeather(other_prop); + chCollectible_collectRedFeather(other_prop); } break; case 0x6D1: //L8028D1BC if(!__baMarker_8028BC60()){ other_prop->spriteProp.unk8_4 = 0; - chcollectable_collectGoldFeather(other_prop); + chCollectible_collectGoldFeather(other_prop); } break; default: diff --git a/src/core2/ba/model.c b/src/core2/ba/model.c index 2bdafa15..1ca0c412 100644 --- a/src/core2/ba/model.c +++ b/src/core2/ba/model.c @@ -298,8 +298,8 @@ void baModel_80292284(f32 arg0[3], s32 arg1){ if(baMarker_get()->unk14_21 && baModelIsVisible){ switch(baModel_getModelId()){ - case 0x34D: - case 0x34E: + case ASSET_34D_MODEL_BANJOKAZOOIE_LOW_POLY: + case ASSET_34E_MODEL_BANJOKAZOOIE_HIGH_POLY: case ASSET_34F_MODEL_BANJO_TERMITE: //802922E8 case ASSET_359_MODEL_BANJO_WALRUS: //802922E8 case ASSET_362_MODEL_BANJO_BEE: diff --git a/src/core2/bs/ant.c b/src/core2/bs/ant.c index c3e36f20..f662c3ac 100644 --- a/src/core2/bs/ant.c +++ b/src/core2/bs/ant.c @@ -153,7 +153,7 @@ void bsant_jump_init(void){ AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); func_8029E554(); animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ASSET_60_ANIM_BSTERMITE_JUMP); + animctrl_setIndex(aCtrl, ASSET_60_ANIM_BSANT_JUMP); animctrl_setDuration(aCtrl, 1.0f); animctrl_setTransitionDuration(aCtrl, 0.1f); func_8028774C(aCtrl, 0.2987f); @@ -233,7 +233,7 @@ void bsant_fall_init(void){ func_8029E554(); D_8037D298 = 0; animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ASSET_60_ANIM_BSTERMITE_JUMP); + animctrl_setIndex(aCtrl, ASSET_60_ANIM_BSANT_JUMP); animctrl_setDuration(aCtrl, 1.9f); func_8028774C(aCtrl, 0.4423f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); @@ -284,7 +284,7 @@ static void __bsant_recoil_init(int take_damage){ func_8029E554(); animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ASSET_28_ANIM_BSTERMITE_OW); + animctrl_setIndex(aCtrl, ASSET_28_ANIM_BSANT_OW); animctrl_setDuration(aCtrl, 1.4f); animctrl_setSubRange(aCtrl, 0.0f, 0.4899f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); @@ -374,7 +374,7 @@ void bsant_die_init(void){ func_8029B930(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); - animctrl_setIndex(aCtrl, ASSET_29_ANIM_BSTERMITE_DIE); + animctrl_setIndex(aCtrl, ASSET_29_ANIM_BSANT_DIE); animctrl_setSubRange(aCtrl, 0.0f, 0.523f); animctrl_setDuration(aCtrl, 1.6f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); diff --git a/src/core2/bs/bBarge.c b/src/core2/bs/bBarge.c index 772ad53b..329cd481 100644 --- a/src/core2/bs/bBarge.c +++ b/src/core2/bs/bBarge.c @@ -67,7 +67,7 @@ void bsbarge_init(void){ plyrMvmnt = _player_getAnimCtrlPtr(); animctrl_reset(plyrMvmnt); animctrl_setSmoothTransition(plyrMvmnt, 0); - animctrl_setIndex(plyrMvmnt, ANIM_BANJO_BBARGE); + animctrl_setIndex(plyrMvmnt, ASSET_1C_ANIM_BSBBARGE); animctrl_setDuration(plyrMvmnt, 1.0f); animctrl_setSubRange(plyrMvmnt, 0, 0.375f); animctrl_setPlaybackType(plyrMvmnt, ANIMCTRL_ONCE); diff --git a/src/core2/bs/bFlap.c b/src/core2/bs/bFlap.c index e0a986f9..bd59c75e 100644 --- a/src/core2/bs/bFlap.c +++ b/src/core2/bs/bFlap.c @@ -18,7 +18,7 @@ f32 D_8037D308; u8 D_8037D30C; void bsbflap_init(void) { - func_8028A274(0x18, 0.3f); + func_8028A274(ASSET_18_ANIM_BSBFLAP_ENTER, 0.3f); func_8029C7F4(1, 1, 1, 2); if (func_8029B2E8() != 0.0f) { yaw_setIdeal(func_8029B33C()); @@ -114,7 +114,7 @@ void bsbflap_update(void){ func_802A298C(); if(animctrl_isAt(sp18, 0.9f)){ animctrl_setSmoothTransition(sp18, 0); - animctrl_setIndex(sp18, ANIM_BANJO_BFLAP); + animctrl_setIndex(sp18, ASSET_17_ANIM_BSBFLAP); animctrl_setDuration(sp18, func_802A2858()); animctrl_setPlaybackType(sp18, ANIMCTRL_LOOP); func_8028774C(sp18, 0.0f); diff --git a/src/core2/bs/bFlip.c b/src/core2/bs/bFlip.c index 9881a22f..d2ea9e75 100644 --- a/src/core2/bs/bFlip.c +++ b/src/core2/bs/bFlip.c @@ -28,7 +28,7 @@ void _bsbflip_802A2DC0(void){ f32 sp20[3]; animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ANIM_BANJO_BFLIP); + animctrl_setIndex(aCtrl, ASSET_4B_ANIM_BSBFLIP_ENTER); animctrl_setDuration(aCtrl, 2.2f); func_8028774C(aCtrl, 0.8566f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); @@ -44,7 +44,7 @@ void bsbflip_init(void){ AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); - animctrl_setIndex(aCtrl, ANIM_BANJO_BFLIP); + animctrl_setIndex(aCtrl, ASSET_4B_ANIM_BSBFLIP_ENTER); animctrl_setDuration(aCtrl, 2.3f); animctrl_setSubRange(aCtrl, 0.0f, 0.7866f); func_8028774C(aCtrl, 0.0f); @@ -100,7 +100,7 @@ void bsbflip_update(void){ if(animctrl_isStopped(aCtrl)){ animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); - animctrl_setIndex(aCtrl, 0x4C); + animctrl_setIndex(aCtrl, ASSET_4C_ANIM_BSBFLIP_HOLD); animctrl_setDuration(aCtrl, 0.13f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_LOOP); func_802875AC(aCtrl, "bsbflip.c", 0xd9); @@ -116,7 +116,7 @@ void bsbflip_update(void){ if(button_released(BUTTON_A)){ animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); - animctrl_setIndex(aCtrl, 0x61); + animctrl_setIndex(aCtrl, ASSET_61_ANIM_BSBFLIP_EXIT); animctrl_setDuration(aCtrl, 0.8f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); func_802875AC(aCtrl, "bsbflip.c", 0xee); diff --git a/src/core2/bs/bFly.c b/src/core2/bs/bFly.c index ede3d6ad..c5abf55f 100644 --- a/src/core2/bs/bFly.c +++ b/src/core2/bs/bFly.c @@ -133,7 +133,7 @@ int func_802A37F8(void){ } void bsbfly_enter_init(void){ - func_8028A274(ANIM_BANJO_FLY_ENTER, 1.4f); + func_8028A274(ASSET_45_ANIM_BSBFLY_ENTER, 1.4f); func_8029C7F4(1,1,3,6); if(func_8029B2E8() != 0.0f) yaw_setIdeal(func_8029B33C()); @@ -177,7 +177,7 @@ void bsbfly_enter_end(void){ } void bsbfly_init(void){ - func_8028A010(ASSET_38_BANJO_FLY, 0.62f); + func_8028A010(ASSET_38_ANIM_BSBFLY, 0.62f); func_8029C7F4(1,1,3,3); if(miscflag_isTrue(9)){ func_80297970(0.0f); @@ -200,7 +200,7 @@ void bsbfly_init(void){ void bsbfly_update(void){ enum bs_e sp54 = 0; AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); - int sp4C; + BKCollisionTri *sp4C; f32 sp40[3]; f32 sp3C; f32 sp38; @@ -278,7 +278,7 @@ void bsbfly_update(void){ sp4C = func_802946F0(); func_8029445C(sp40); - if(sp4C && -1.0 < sp40[1]) + if(sp4C != NULL && -1.0 < sp40[1]) sp38 = 0.0f; func_8029797C(yaw_get()); @@ -320,7 +320,7 @@ int bsbfly_bombHitboxActive(void){ //bsbfly_bomb_init void func_802A3F9C(void){ f32 sp1C[3]; - func_8028A180(ASSET_43_ANIM_BANJO_BEAKBOMB_START, 1.0f); + func_8028A180(ASSET_43_ANIM_BSBFLY_BEAKBOMB_START, 1.0f); func_8029C7F4(1,1,3,7); func_802A339C(D_8037D338, sp1C, 4200.0f); yaw_setIdeal(sp1C[1] + 180.0f); @@ -415,10 +415,10 @@ void func_802A411C(void) { if (0.65 > sp34[1]) { next_state = func_802A40E0(); } else { - next_state = BS_58; + next_state = BS_58_BEAKBOMB_CRASH; } } else if (sp40 != 0) { - next_state = BS_58; + next_state = BS_58_BEAKBOMB_CRASH; } } _player_getPosition(sp48); @@ -449,7 +449,7 @@ void func_802A4430(void){ plyr_animctrl = _player_getAnimCtrlPtr(); animctrl_reset(plyr_animctrl); animctrl_setTransitionDuration(plyr_animctrl, 0.3f); - animctrl_setIndex(plyr_animctrl, ASSET_CC_ANIM_BANJO_BEAKBOMB_END); + animctrl_setIndex(plyr_animctrl, ASSET_CC_ANIM_BSFLY_BEAKBOMB_END); animctrl_setDuration(plyr_animctrl, 0.38f); animctrl_setPlaybackType(plyr_animctrl, ANIMCTRL_LOOP); func_802875AC(plyr_animctrl, "bsbfly.c", 0x38a); @@ -526,8 +526,8 @@ void func_802A46C8(void) { } -void func_802A4748(void) { - func_8028A180(0x3E, 1.4f); +void bsbfly_beakbomb_crash_init(void) { + func_8028A180(ASSET_3E_ANIM_BSBFLY_BEAKBOMB_CRASH, 1.4f); func_8029C7F4(1, 1, 3, 3); func_8029E070(1); FUNC_8030E624(SFX_1F_HITTING_AN_ENEMY_3, 0.8f, 32750); @@ -631,7 +631,7 @@ void func_802A4A78(s32 arg0) { sp20 = 400.0f; } func_802BB3DC(2, 100.0f, 0.85f); - func_8028A274(0xD3, 1.2f); + func_8028A274(ASSET_D3_ANIM_BSBFLY_BEAKBOMB_REBOUND, 1.2f); func_80299BFC(1.0f); rumbleManager_80250D94(1.0f, 0.5f, 0.5f); _player_getPosition(sp3C); @@ -754,7 +754,7 @@ void func_802A4F44(void){ } void func_802A4F74(void) { - func_8028A010(ASSET_38_BANJO_FLY, 0.62f); + func_8028A010(ASSET_38_ANIM_BSBFLY, 0.62f); func_8029C7F4(1, 1, 3, 7); func_8029E070(1); func_802914CC(4); @@ -807,7 +807,7 @@ void func_802A50F8(void){ } void func_802A5120(void){ - func_8028A084(0x68, 0.35f); + func_8028A084(ASSET_68_ANIM_BSJUMP_TUMBLE, 0.35f); func_8029C7F4(1,1,3,6); func_80297970(0.0f); func_80297A0C(0); diff --git a/src/core2/bs/bLongLeg.c b/src/core2/bs/bLongLeg.c index 5b9c5060..3aefed70 100644 --- a/src/core2/bs/bLongLeg.c +++ b/src/core2/bs/bLongLeg.c @@ -2,6 +2,8 @@ #include "functions.h" #include "variables.h" #include "core2/ba/model.h" +#include "core2/statetimer.h" + /* .data */ const f32 D_80364A40 = 80.0f; @@ -52,9 +54,9 @@ int bslongleg_inSet(s32 move_indx){ } void func_802A531C(void){ - func_80299650(func_80291684(2), func_80291670(2)); - if(func_80291700(2, 0.01f)) - func_8030E484(0x3eb); + func_80299650(stateTimer_getPrevious(STATE_TIMER_2_LONGLEG), stateTimer_get(STATE_TIMER_2_LONGLEG)); + if(stateTimer_isAt(STATE_TIMER_2_LONGLEG, 0.01f)) + func_8030E484(SFX_3EB_UNKNOWN); } void func_802A5374(void){ @@ -81,28 +83,28 @@ void func_802A5404(void){ baModel_setDirection(PLAYER_MODEL_DIR_BANJO); pitch_setIdeal(0.0f); roll_setIdeal(0.0f); - func_802917C4(2); + stateTimer_clear(STATE_TIMER_2_LONGLEG); func_803219F4(1); miscflag_clear(3); func_8029E180(4, 0.5f); func_802A531C(); } -void func_802A54A8(void){ +void __bsblongleg_enterFromTrot(void){ AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); - animctrl_setIndex(aCtrl, ANIM_BANJO_LONGLEG_ENTER_AS_BIRD); + animctrl_setIndex(aCtrl, ASSET_40_ANIM_BSLONGLEG_ENTER_FROM_BTROT); animctrl_setDuration(aCtrl, 1.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); func_802875AC(aCtrl, "bsblongleg.c", 0xe1); - func_802917E4(2, D_8037D35C); + stateTimer_set(STATE_TIMER_2_LONGLEG, D_8037D35C); func_803219F4(2); func_8030E2C4(D_8037D361); D_8037D360 = 1; } -void func_802A5548(void){ +void __bsblongleg_enter(void){ AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); @@ -119,9 +121,9 @@ void bsblongleg_enter_init(void){ func_8030E04C(D_8037D361, 0.8f, 1.9f, 1.2f); miscflag_clear(MISC_FLAG_E_TOUCHING_WADING_BOOTS); if(bsbtrot_inSet(bs_getPrevState())) - func_802A54A8(); + __bsblongleg_enterFromTrot(); else - func_802A5548(); + __bsblongleg_enter(); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_802A5374(); @@ -129,21 +131,21 @@ void bsblongleg_enter_init(void){ } void bsblongleg_enter_update(void){ - enum bs_e sp1C = 0; + enum bs_e next_state = 0; AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); func_802A531C(); func_80299594(1, 0.5f); switch(D_8037D360){ case 0: if(animctrl_isStopped(aCtrl)) - func_802A54A8(); + __bsblongleg_enterFromTrot(); break; case 1: if(animctrl_isStopped(aCtrl)) - sp1C = BS_26_LONGLEG_IDLE; + next_state = BS_26_LONGLEG_IDLE; break; } - bs_setState(sp1C); + bs_setState(next_state); } void bsblongleg_enter_end(void){ @@ -167,7 +169,7 @@ void bsblongleg_stand_update(void){ next_state = func_802926C0(); if(button_pressed(BUTTON_B)) - func_802917C4(2); + stateTimer_clear(STATE_TIMER_2_LONGLEG); if(func_8029B300() > 0) next_state = BS_LONGLEG_WALK; @@ -178,7 +180,7 @@ void bsblongleg_stand_update(void){ if(button_pressed(BUTTON_A) && func_8028B2E8()) next_state = BS_LONGLEG_JUMP; - if(func_802916CC(2)) + if(stateTimer_isDone(STATE_TIMER_2_LONGLEG)) next_state = BS_LONGLEG_EXIT; if(func_802A51D0()) @@ -204,7 +206,7 @@ void bsblongleg_walk_init(void){ } void bsblongleg_walk_update(void){ - enum bs_e sp1C = 0; + enum bs_e next_state = 0; AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); func_802A531C(); func_80299594(1, 0.5f); @@ -218,24 +220,24 @@ void bsblongleg_walk_update(void){ func_802A524C(); if(button_pressed(BUTTON_B) && func_80297A64() == 0.0f) - func_802917C4(2); + stateTimer_clear(STATE_TIMER_2_LONGLEG); if(!func_8029B300() && func_80297C04(1.0f)) - sp1C = BS_26_LONGLEG_IDLE; + next_state = BS_26_LONGLEG_IDLE; if(player_shouldSlideTrot()) - sp1C = BS_LONGLEG_SLIDE; + next_state = BS_LONGLEG_SLIDE; if(button_pressed(BUTTON_A) && func_8028B2E8()) - sp1C = BS_LONGLEG_JUMP; + next_state = BS_LONGLEG_JUMP; - if(func_802916CC(2)) - sp1C = BS_LONGLEG_EXIT; + if(stateTimer_isDone(STATE_TIMER_2_LONGLEG)) + next_state = BS_LONGLEG_EXIT; if(func_802A51D0()) - sp1C = BS_4C_LANDING_IN_WATER; + next_state = BS_4C_LANDING_IN_WATER; - bs_setState(sp1C); + bs_setState(next_state); } void bsblongleg_walk_end(void){ @@ -247,7 +249,7 @@ void func_802A5AB0(void){ animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); animctrl_setDirection(aCtrl, 0); - animctrl_setIndex(aCtrl, ANIM_BANJO_LONGLEG_ENTER_AS_BIRD); + animctrl_setIndex(aCtrl, ASSET_40_ANIM_BSLONGLEG_ENTER_FROM_BTROT); animctrl_setDuration(aCtrl, 1.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); func_802875AC(aCtrl, "bsblongleg.c", 0x200); @@ -277,7 +279,7 @@ void bsblongleg_exit_init(void){ } void bsblongleg_exit_update(void){ - enum bs_e sp1C = 0; + enum bs_e next_state = 0; AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); func_802A531C(); func_80299628(1); @@ -292,14 +294,14 @@ void bsblongleg_exit_update(void){ break; case 1://L802A5CB4 if(animctrl_isStopped(aCtrl)) - sp1C = BS_1_IDLE; + next_state = BS_1_IDLE; break; } if(func_802A51D0()) - sp1C = BS_4C_LANDING_IN_WATER; + next_state = BS_4C_LANDING_IN_WATER; - bs_setState(sp1C); + bs_setState(next_state); } @@ -312,7 +314,7 @@ void bsblongleg_jump_init(void){ AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); D_8037D350 = 0.14f; animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ANIM_BANJO_LONGLEG_JUMP); + animctrl_setIndex(aCtrl, ASSET_3D_ANIM_BSLONGLEG_JUMP); animctrl_setTransitionDuration(aCtrl, 0.134f); animctrl_setDuration(aCtrl, 1.0f); func_8028774C(aCtrl, D_8037D350); @@ -383,7 +385,7 @@ void bsblongleg_jump_update(void){ if(button_pressed(BUTTON_A)) sp44 = BS_LONGLEG_JUMP; - if(func_802916CC(2)) + if(stateTimer_isDone(STATE_TIMER_2_LONGLEG)) sp44 = BS_LONGLEG_EXIT; break; @@ -405,7 +407,7 @@ void bsblongleg_slide_init(void){ AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ANIM_BANJO_LONGLEG_JUMP); + animctrl_setIndex(aCtrl, ASSET_3D_ANIM_BSLONGLEG_JUMP); animctrl_setPlaybackType(aCtrl, ANIMCTRL_STOPPED); func_8028774C(aCtrl, 0.0865f); func_802875AC(aCtrl, "bsblongleg.c", 0x339); @@ -468,18 +470,18 @@ void func_802A6394(void){ } void func_802A63F0(void){ - enum bs_e sp1C = 0; + enum bs_e next_state = 0; func_802A531C(); func_8029C6D0(); func_80299628(1); if(func_80298850() == 0) - sp1C = BS_26_LONGLEG_IDLE; + next_state = BS_26_LONGLEG_IDLE; if(func_802A51D0()) - sp1C = BS_4C_LANDING_IN_WATER; + next_state = BS_4C_LANDING_IN_WATER; - bs_setState(sp1C); + bs_setState(next_state); } void func_802A6450(void){ @@ -495,7 +497,7 @@ void bsblongleg_drone_init(void){ void bsblongleg_drone_update(void){ func_802A531C(); bsdrone_update(); - if(func_802916CC(2)) + if(stateTimer_isDone(STATE_TIMER_2_LONGLEG)) bs_setState(BS_LONGLEG_EXIT); } diff --git a/src/core2/bs/bPeck.c b/src/core2/bs/bPeck.c index 0c622c1b..beaf584e 100644 --- a/src/core2/bs/bPeck.c +++ b/src/core2/bs/bPeck.c @@ -82,7 +82,7 @@ void bsbpeck_update(void){ switch(D_8037D374){ case 0://L802A6770 if(animctrl_isAt(aCtrl, 0.9126f)){ - animctrl_setIndex(aCtrl, ANIM_BANJO_BPECK_ENTER); + animctrl_setIndex(aCtrl, ASSET_19_ANIM_BSBPECK_ENTER); func_8028774C(aCtrl, 0.0f); animctrl_setDuration(aCtrl, 0.35f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_LOOP); diff --git a/src/core2/bs/bShock.c b/src/core2/bs/bShock.c index f1d50860..3d2ce69b 100644 --- a/src/core2/bs/bShock.c +++ b/src/core2/bs/bShock.c @@ -15,7 +15,7 @@ u8 D_8037D382; void bsbshock_charge_init(void){ AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ANIM_BANJO_BSHOCK_CHARGE); + animctrl_setIndex(aCtrl, ASSET_48_ANIM_BSBSHOCK_CHARGE); animctrl_setTransitionDuration(aCtrl, 0.4f); animctrl_setDuration(aCtrl, 4.2f); animctrl_setSubRange(aCtrl, 0.0f, 0.1061f); @@ -55,7 +55,7 @@ void bsbshock_charge_update(void){ func_8029C348(); } func_802B6FA8(); - _get_velocity(&sp1C); + _get_velocity(sp1C); if(button_released(BUTTON_A) && 0.0f < sp1C[1]){ gravity_reset(); } @@ -126,7 +126,7 @@ void bsbshock_init(void){ AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); - animctrl_setIndex(aCtrl, ANIM_BANJO_BSHOCK_JUMP); + animctrl_setIndex(aCtrl, ASSET_49_ANIM_BSBSHOCK_JUMP); animctrl_setDuration(aCtrl, 0.8f); func_8028774C(aCtrl, 0.5304f); animctrl_setSubRange(aCtrl, 0.0f, 1.0f); @@ -157,7 +157,7 @@ void bsbshock_update(void){ AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); func_802B6FA8(); - _get_velocity(&sp20); + _get_velocity(sp20); if(animctrl_isAt(aCtrl, 0.7f)) func_8030E484(SFX_53_BANJO_HUIII); diff --git a/src/core2/bs/bSwim.c b/src/core2/bs/bSwim.c index 1565d740..ffdc710e 100644 --- a/src/core2/bs/bSwim.c +++ b/src/core2/bs/bSwim.c @@ -22,7 +22,7 @@ void func_802A7140() { f32 func_802A716C() { f32 sp24[3]; - _get_velocity(&sp24); + _get_velocity(sp24); ml_map_f(gu_sqrtf((sp24[0] * sp24[0]) + (sp24[1] * sp24[1]) + (sp24[2] * sp24[2])), 50.0f, 200.0f, 0.0f, 1.0f); } @@ -155,7 +155,7 @@ void func_802A7738(void) { temp_v0 = _player_getAnimCtrlPtr(); temp_s0 = temp_v0; animctrl_reset(temp_v0); - animctrl_setIndex(temp_s0, 0x3F); + animctrl_setIndex(temp_s0, ASSET_3F_ANIM_BSSWIM_DIVE_MOVE); func_8028774C(temp_s0, 0.4626f); animctrl_setDuration(temp_s0, 1.0f); func_802875AC(temp_s0, "bsbswim.c", 0x186); @@ -287,7 +287,7 @@ void func_802A7BD0(void) { func_8028A274(0x1A0, 1.4f); func_80299BFC(1.0f); _player_getPosition(sp30); - func_80294980(&sp24); + func_80294980(sp24); func_80257F18(sp24, sp30, &sp3C); yaw_setIdeal(mlNormalizeAngle(sp3C)); yaw_applyIdeal(); @@ -328,9 +328,9 @@ void func_802A7D74(void) { func_802A75B0(); } -void func_802A7DAC(void) { +void bsSwim_dive_init(void) { ability_use(ABILITY_3_CAMERA_CONTROL); - func_8028A180(0x3C, 1.0f); + func_8028A180(ASSET_3C_ANIM_BSSWIM_DIVE_ENTER, 1.0f); func_802A7140(); yaw_setVelocityBounded(500.0f, 5.0f); func_80297930(0); @@ -391,7 +391,7 @@ void func_802A7F6C(void) { } func_8029B930(); - func_8028A010(0xB9, 0.7f); + func_8028A010(ASSET_B9_ANIM_BSSWIM_DIE, 0.7f); func_802A7140(); func_802A744C(); func_80297B64(1.0f); @@ -521,14 +521,14 @@ void func_802A846C(void) { } if (sp28 > 80.0f) { animctrl_reset(temp_s0); - animctrl_setIndex(temp_s0, ANIM_BANJO_ROLL); + animctrl_setIndex(temp_s0, ASSET_4F_ANIM_BSTWIRL); animctrl_setPlaybackType(temp_s0, ANIMCTRL_STOPPED); animctrl_setDuration(temp_s0, 1.2f); func_8028774C(temp_s0, 0.8204f); func_802875AC(temp_s0, "bsbswim.c", 0x417); } else { animctrl_reset(temp_s0); - animctrl_setIndex(temp_s0, 0x57); + animctrl_setIndex(temp_s0, ASSET_57_ANIM_BSSWIM_IDLE); animctrl_setPlaybackType(temp_s0, ANIMCTRL_LOOP); animctrl_setDuration(temp_s0, 1.2f); func_8028774C(temp_s0, 0.6412f); diff --git a/src/core2/bs/bTrot.c b/src/core2/bs/bTrot.c index 58d320ed..29b2c2d3 100644 --- a/src/core2/bs/bTrot.c +++ b/src/core2/bs/bTrot.c @@ -3,6 +3,8 @@ #include "variables.h" #include "core2/ba/model.h" +#include "core2/statetimer.h" + /* .data */ f32 D_80364A90 = 30.0f; @@ -24,7 +26,7 @@ f32 D_8037D3A0; u8 D_8037D3A4; void func_802A87C0(void){ - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) func_8029C3E8(10.0f, 50.0f); else func_8029C22C(); @@ -39,10 +41,10 @@ void func_802A880C(s32 arg0){ void func_802A8850(void){ if( button_pressed(BUTTON_B) - && func_80291698(3) + && stateTimer_isActive(STATE_TIMER_3_TURBO_TALON) && func_80297A64() == 0.0f ){ - func_802917C4(3); + stateTimer_clear(STATE_TIMER_3_TURBO_TALON); } } @@ -51,7 +53,7 @@ f32 func_802A88B0(void){ if(func_8028B128()) return D_80364AA0; - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) return D_80364A9C; return D_80364A94; @@ -59,7 +61,7 @@ f32 func_802A88B0(void){ f32 func_802A8900(void){ - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) return D_80364A98; return D_80364A90; @@ -69,7 +71,7 @@ f32 func_802A8934(void){ if(func_8028B128()) return D_80364AB8; - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) return D_80364AB0; return D_80364AA8; @@ -79,7 +81,7 @@ f32 func_802A8984(void){ if(func_8028B128()) return D_80364AB4; - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) return D_80364AAC; return D_80364AA4; @@ -109,14 +111,14 @@ void func_802A8A40(void){ } void func_802A8AD8(void){ - func_80299650(func_80291684(3), func_80291670(3)); + func_80299650(stateTimer_getPrevious(STATE_TIMER_3_TURBO_TALON), stateTimer_get(STATE_TIMER_3_TURBO_TALON)); if(miscflag_isTrue(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS) &&(bs_getState() != BS_17_BTROT_EXIT)){ miscflag_clear(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS); - func_802917E4(3, func_80294A40()); + stateTimer_set(STATE_TIMER_3_TURBO_TALON, func_80294A40()); func_803219F4(4); } - if(func_802916CC(3)){ + if(stateTimer_isDone(STATE_TIMER_3_TURBO_TALON)){ if(func_8029DFE0()){ func_8029E0DC(0); if(miscflag_isFalse(MISC_FLAG_14_LOSE_BOGGY_RACE)) @@ -142,7 +144,7 @@ void func_802A8BB0(void){ roll_setIdeal(0.0f); miscflag_clear(3); if(next_state != BS_5A_LOADZONE) - func_802917E4(3, 0.0f); + stateTimer_set(STATE_TIMER_3_TURBO_TALON, 0.0f); func_802A8AD8(); func_80289F10(1); func_8029CF48(4, 0, 0.0f); @@ -151,7 +153,7 @@ void func_802A8BB0(void){ } int func_802A8C60(void){ - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) return 0; return button_released(BUTTON_Z); @@ -167,7 +169,7 @@ void _bsbtrot_802A8C98(AnimCtrl *aCtrl, enum asset_e arg1){ } enum asset_e func_802A8D00(enum asset_e arg0, enum asset_e arg1){ - if(func_802916CC(3)) + if(stateTimer_isDone(STATE_TIMER_3_TURBO_TALON)) return arg0; else return arg1; @@ -239,7 +241,7 @@ void bsbtrot_enter_end(void){ } void bsbtrot_stand_init(void){ - func_8028A010(ASSET_26_ANIM_BTROT_IDLE, 1.2f); + func_8028A010(ASSET_26_ANIM_BSBTROT_IDLE, 1.2f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); func_802A8A40(); @@ -249,7 +251,7 @@ void bsbtrot_stand_update(void){ enum bs_e next_state = 0;; func_802A8850(); func_802A8AD8(); - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) func_802A87C0(); func_80299628(1); next_state = func_802A8D84(next_state); @@ -263,7 +265,7 @@ void bsbtrot_stand_end(void){ } enum asset_e func_802A9030(void){ - return func_802A8D00(0x15, 0x44); + return func_802A8D00(ASSET_15_ANIM_BSBTROT_WALK, ASSET_44_ANIM_BSBTROT_TURBO_WALK); } void func_802A9054(void){ @@ -303,7 +305,7 @@ void bsbtrot_walk_update(void){ func_802A880C(0); func_8029AD28(0.7781f, 3); - if(func_80291698(3)){ + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)){ func_802A87C0(); } else{ @@ -371,7 +373,7 @@ void bsbtrot_jump_update(void){ AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); f32 sp1C[3]; func_802A8AD8(); - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) func_802A87C0(); if(miscflag_isTrue(0xF)) @@ -520,7 +522,7 @@ void bsbtrot_slide_update(void){ f32 sp2C; func_802A8AD8(); - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) func_802A87C0(); func_80299AAC(); D_8037D3A0 = ml_max_f(D_8037D3A0-time_getDelta(), 0.0f); @@ -582,7 +584,7 @@ void bsbtrot_fall_update(void){ AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); f32 sp1C[3]; func_802A8AD8(); - if(func_80291698(3)) + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)) func_802A87C0(); if(miscflag_isTrue(0xf)) @@ -676,7 +678,7 @@ void bsbtrot_fall_end(void){ } void bsbtrot_unk79_init(void){ - func_8028A010(ASSET_26_ANIM_BTROT_IDLE, 1.2f); + func_8028A010(ASSET_26_ANIM_BSBTROT_IDLE, 1.2f); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_802A8A40(); diff --git a/src/core2/bs/bWhirl.c b/src/core2/bs/bWhirl.c index d03b2084..261ff2df 100644 --- a/src/core2/bs/bWhirl.c +++ b/src/core2/bs/bWhirl.c @@ -76,7 +76,7 @@ void func_802AA58C(enum bs_e *arg0){ } void bsbwhirl_enter_init(void){ - func_8028A274(0x22, 0.5f); + func_8028A274(ASSET_22_ANIM_BSWHIRL_EXIT, 0.5f); func_8029C7F4(1,1,1,2); func_80297970(0.0f); func_8029B324(0, 0.03f); @@ -130,7 +130,7 @@ void bsbwhirl_stand_end(void){ } void bsbwhirl_walk_init(void){ - func_8028A010(ASSET_11_ANIM_BSWONDERWING_WALK, 0.53f); + func_8028A010(ASSET_11_ANIM_BSWHIRL_WALK, 0.53f); func_80289EC8(D_80364AD0, D_80364AD4, D_80364AD8, D_80364ADC); func_8029C7F4(2,1,1,2); @@ -171,7 +171,7 @@ void bsbwhirl_jump_init(void){ AnimCtrl * aCtrl = _player_getAnimCtrlPtr(); animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ANIM_BANJO_WONDERWING_JUMP); + animctrl_setIndex(aCtrl, ASSET_1B_ANIM_BSWHIRL_JUMP); animctrl_setDuration(aCtrl, 0.8f); animctrl_setTransitionDuration(aCtrl, 0.134f); func_8028774C(aCtrl, 0.14f); @@ -244,7 +244,7 @@ void bsbwhirl_exit_init(void){ animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); animctrl_setDirection(aCtrl, 0); - animctrl_setIndex(aCtrl, ANIM_BANJO_WONDERWING_EXIT); + animctrl_setIndex(aCtrl, ASSET_22_ANIM_BSWHIRL_EXIT); animctrl_setDuration(aCtrl, 0.5f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); func_802875AC(aCtrl, "bsbwhirl.c", 0x201); diff --git a/src/core2/bs/bbuster.c b/src/core2/bs/bbuster.c index aedc1235..bbf2e1b4 100644 --- a/src/core2/bs/bbuster.c +++ b/src/core2/bs/bbuster.c @@ -57,7 +57,7 @@ void bsbbuster_init(void){ animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); - animctrl_setIndex(aCtrl, ANIM_BANJO_BBUSTER); + animctrl_setIndex(aCtrl, ASSET_1D_ANIM_BSBBUSTER); animctrl_setDuration(aCtrl, 1.02f); animctrl_setSubRange(aCtrl, 0.0f, 0.35f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); diff --git a/src/core2/bs/carry.c b/src/core2/bs/carry.c index 09b02c63..e213f411 100644 --- a/src/core2/bs/carry.c +++ b/src/core2/bs/carry.c @@ -2,6 +2,7 @@ #include "functions.h" #include "variables.h" #include "bsint.h" +#include "core2/statetimer.h" /* .data */ const f32 D_80364AF0 = 30.0f; @@ -101,7 +102,7 @@ void bscarry_interrupt(void){ func_8028DE6C(baMarker_getCarriedObjectActorId()); break; case BS_INTR_16_THROW_CARRIED_OBJ: - if(func_802916CC(1)){ + if(stateTimer_isDone(STATE_TIMER_1_THROW)){ bs_setState(BS_CARRY_THROW); func_8029A86C(2); } diff --git a/src/core2/bs/climb.c b/src/core2/bs/climb.c index c3c8ff80..973f6edc 100644 --- a/src/core2/bs/climb.c +++ b/src/core2/bs/climb.c @@ -125,7 +125,7 @@ void bsclimb_idle_end(void){ } void bsclimb_move_init(void){ - func_8028A010(ASSET_A_ANIM_BANJO_CLIMB_MOVE, 0.9f); + func_8028A010(ASSET_A_ANIM_BSCLIMB_MOVE, 0.9f); func_80289F10(3); func_80289EA8(0.3f, 1.5f); func_80289EC8(100.0f, 300.0f, 0.6f, 0.4f); diff --git a/src/core2/bs/croc.c b/src/core2/bs/croc.c index 5d2b194f..13aefa48 100644 --- a/src/core2/bs/croc.c +++ b/src/core2/bs/croc.c @@ -1,7 +1,7 @@ #include #include "functions.h" #include "variables.h" - +#include "core2/statetimer.h" int bscroc_inSet(enum bs_e state); @@ -32,7 +32,7 @@ u8 D_8037D3F5; /* .code */ f32 func_802ABDC0(void){ - if(func_80291670(3) != 0.0f) + if(stateTimer_get(STATE_TIMER_3_TURBO_TALON) != 0.0f) return D_80364B08; else return D_80364B04; @@ -45,11 +45,11 @@ void func_802ABE04(void){ } void func_802ABE70(void){ - f32 sp1C = func_80291670(3); - func_80299650(func_80291684(3), sp1C); + f32 sp1C = stateTimer_get(STATE_TIMER_3_TURBO_TALON); + func_80299650(stateTimer_getPrevious(STATE_TIMER_3_TURBO_TALON), sp1C); if(miscflag_isTrue(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS) && bs_getState() != BS_17_BTROT_EXIT){ miscflag_clear(MISC_FLAG_10_TOUCHING_TURBO_TRAINERS); - func_802917E4(3, func_80294A40()); + stateTimer_set(STATE_TIMER_3_TURBO_TALON, func_80294A40()); func_8025A6EC(COMUSIC_8A_GETTING_TURBO_TRAINERS, -1); func_8029E0DC(1); } @@ -58,9 +58,9 @@ void func_802ABE70(void){ func_8029C3E8(0.0f, 30.0f); } - if(func_80291700(3, 0.01f)){ + if(stateTimer_isAt(STATE_TIMER_3_TURBO_TALON, 0.01f)){ func_8029E0DC(0); - func_8030E58C(0x3eb, 1.35f); + func_8030E58C(SFX_3EB_UNKNOWN, 1.35f); } } diff --git a/src/core2/bs/crouch.c b/src/core2/bs/crouch.c index 8950f400..464aeaed 100644 --- a/src/core2/bs/crouch.c +++ b/src/core2/bs/crouch.c @@ -10,17 +10,17 @@ u8 D_8037D404; enum bs_e func_802ADCD4(enum bs_e arg0); void func_802AD6D0(void){ - func_8028A010(ANIM_BANJO_CROUCH, 0.5f); + func_8028A010(ASSET_10C_ANIM_BSCROUCH_IDLE, 0.5f); D_8037D404 = 4; } void func_802AD6FC(void){ - func_8028A180(ANIM_BANJO_CROUCH_NOINPUT, 2.0f); + func_8028A180(ASSET_116_ANIM_BSCROUCH_NOINPUT, 2.0f); D_8037D404 = 2; } void func_802AD728(void){ - func_8028A1F4(ANIM_BANJO_CROUCH, 0.5f, 0.9999f); + func_8028A1F4(ASSET_10C_ANIM_BSCROUCH_IDLE, 0.5f, 0.9999f); func_8029E3C0(2, 2.0f); D_8037D404 = 1; } @@ -51,7 +51,7 @@ void bscrouch_init(void){ break; } animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ANIM_BANJO_CROUCH_ENTER); + animctrl_setIndex(aCtrl, ASSET_1_ANIM_BSCROUCH_ENTER); animctrl_setDuration(aCtrl, 0.5f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); func_8028774C(aCtrl, sp24); diff --git a/src/core2/bs/die.c b/src/core2/bs/die.c index 9cda39c5..8829e8de 100644 --- a/src/core2/bs/die.c +++ b/src/core2/bs/die.c @@ -27,7 +27,7 @@ void bsdie_init(void){ animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); - animctrl_setIndex(aCtrl, ASSET_9_ANIM_BANJO_DIE); + animctrl_setIndex(aCtrl, ASSET_9_ANIM_BSDIE); animctrl_setSubRange(aCtrl, 0.0f, 0.3356f); animctrl_setDuration(aCtrl, 2.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); diff --git a/src/core2/bs/dronegoto.c b/src/core2/bs/dronegoto.c index d2eb89eb..787ca4b0 100644 --- a/src/core2/bs/dronegoto.c +++ b/src/core2/bs/dronegoto.c @@ -73,7 +73,7 @@ void func_802AECE4(void){ && animctrl_getIndex(aCtrl) == ASSET_3_ANIM_BSWALK ){ animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ANIM_BANJO_RUN); + animctrl_setIndex(aCtrl, ASSET_C_ANIM_BSWALK_RUN); func_802875AC(aCtrl, "bsdronegoto.c", 0x9d); } diff --git a/src/core2/bs/dronexform.c b/src/core2/bs/dronexform.c index bea51c93..9d2f4609 100644 --- a/src/core2/bs/dronexform.c +++ b/src/core2/bs/dronexform.c @@ -332,7 +332,7 @@ void bsdronexform_init(void){ func_80294378(6); func_802AFB0C(); func_802B016C(); - D_8037D470.player_transformation = _player_getTransformation(); + D_8037D470.player_transformation = bsStoredState_getTransformation(); D_8037D470.room_transformation = func_80294A4C(); miscflag_set(MISC_FLAG_1B_TRANSFORMING); D_8037D470.state = 0; diff --git a/src/core2/bs/jig.c b/src/core2/bs/jig.c index b39c3541..0710eca1 100644 --- a/src/core2/bs/jig.c +++ b/src/core2/bs/jig.c @@ -23,7 +23,7 @@ void bsjig_jiggy_init(void){ animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, FALSE); - animctrl_setIndex(aCtrl, ANIM_BANJO_BJIG_JIGGY); + animctrl_setIndex(aCtrl, ASSET_2E_ANIM_BSJIG_JIGGY); animctrl_setDuration(aCtrl, 4.3f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); func_802875AC(aCtrl, "bsjig.c", 0x7f); @@ -43,13 +43,13 @@ void bsjig_jiggy_init(void){ miscflag_clear(7); miscflag_clear(0xf); baMarker_collisionOff(); - func_802C82C0(marker_getActor(bsjig_gJiggyMarker), 1); + chJigsawDance_setState(marker_getActor(bsjig_gJiggyMarker), 1); D_8037D4B0 = 0; } void func_802B0BA8(void){ if(bsjig_gJiggyMarker){ - func_802C82C0(marker_getActor(bsjig_gJiggyMarker), 4); + chJigsawDance_setState(marker_getActor(bsjig_gJiggyMarker), 4); } } @@ -84,7 +84,7 @@ void bsjig_jiggy_update(void){ void func_802B0CD8(void){ if(bsjig_gJiggyMarker){ - func_802C82C0(marker_getActor(bsjig_gJiggyMarker), 5); + chJigsawDance_setState(marker_getActor(bsjig_gJiggyMarker), 5); bsjig_gJiggyMarker = NULL; } } diff --git a/src/core2/bs/jump.c b/src/core2/bs/jump.c index 42cfac7f..c7940127 100644 --- a/src/core2/bs/jump.c +++ b/src/core2/bs/jump.c @@ -386,7 +386,7 @@ bool bsjump_jumpingFromWater(void){ } void bsjump_tumble_init(void){ - func_8028A084(0x68, 0.35f); + func_8028A084(ASSET_68_ANIM_BSJUMP_TUMBLE, 0.35f); func_8029C7F4(1,1,3,6); baModel_setYDisplacement(60.0f); if(func_80293234() == 1){ diff --git a/src/core2/bs/ow.c b/src/core2/bs/ow.c index 23143403..35647358 100644 --- a/src/core2/bs/ow.c +++ b/src/core2/bs/ow.c @@ -16,7 +16,7 @@ void bsow_init(void){ animctrl_reset(plyr_mvmnt); animctrl_setSmoothTransition(plyr_mvmnt, 0); animctrl_setSubRange(plyr_mvmnt, 0.0f, 0.534399986267f); - animctrl_setIndex(plyr_mvmnt, ANIM_BANJO_OW); + animctrl_setIndex(plyr_mvmnt, ASSET_4D_ANIM_BSOW); animctrl_setDuration(plyr_mvmnt, 1.70000004768f); animctrl_setPlaybackType(plyr_mvmnt, ANIMCTRL_ONCE); func_802875AC(plyr_mvmnt, "bsow.c", 0x50); diff --git a/src/core2/bs/slide.c b/src/core2/bs/slide.c index ebd1a0b2..92708172 100644 --- a/src/core2/bs/slide.c +++ b/src/core2/bs/slide.c @@ -51,13 +51,13 @@ void bsslide_init(void){ f32 sp2C; f32 sp28; f32 tmp_f0; - D_8037D520 = ANIM_BANJO_SLIDE_FRONT; + D_8037D520 = ASSET_5A_ANIM_BSSLIDE_FRONT; if(player_isSliding()){ func_80294480(sp30); if(func_80258108(sp30, &sp28, &sp2C)){ tmp_f0 = mlNormalizeAngle(yaw_get() - sp28); if(tmp_f0 < 90.0f || 270.0f < tmp_f0){ - D_8037D520 = ANIM_BANJO_SLIDE_BACK; + D_8037D520 = ASSET_59_ANIM_BSSLIDE_BACK; } } } diff --git a/src/core2/bs/splat.c b/src/core2/bs/splat.c index f97194b6..5c1507b8 100644 --- a/src/core2/bs/splat.c +++ b/src/core2/bs/splat.c @@ -57,7 +57,7 @@ void bssplat_update(void){ sp1C = BS_2F_FALL; if(animctrl_isStopped(aCtrl)){ - func_8028A180(ASSET_D2_ANIM_BANJO_GETTING_UP, 2.25f); + func_8028A180(ASSET_D2_ANIM_BSSPLAT, 2.25f); D_8037D530 = 1; } break; diff --git a/src/core2/bs/stand.c b/src/core2/bs/stand.c index 05252b13..53bf24d6 100644 --- a/src/core2/bs/stand.c +++ b/src/core2/bs/stand.c @@ -2,6 +2,7 @@ #include "functions.h" #include "variables.h" #include "bsint.h" +#include "core2/statetimer.h" extern f32 func_8029B2E8(void); void yaw_setVelocityBounded(f32, f32); @@ -59,7 +60,7 @@ s32 func_802B488C(s32 arg0){ retVal = BS_WALK; break; case 4: //L802B48D4 - retVal = BS_WALK_FAST; + retVal = BS_4_WALK_FAST; break; } if(button_held(BUTTON_Z)) @@ -211,12 +212,12 @@ void bsstand_update(void) { if (animctrl_isAt(anim_ctrl, 0.9999f)) func_8029E070(0); }//L802B50E4 } else if (sp18 & 0x20) { - if (animctrl_getIndex(anim_ctrl) == 0x95) { + if (animctrl_getIndex(anim_ctrl) == ASSET_95_ANIM_BSSTAND_KAZOOIE_PECK) { func_802B4A10(anim_ctrl); if (animctrl_isAt(anim_ctrl, 0.37f)) { animctrl_reset(anim_ctrl); animctrl_setTransitionDuration(anim_ctrl, 0.1f); - animctrl_setIndex(anim_ctrl, 0xF6); + animctrl_setIndex(anim_ctrl, ASSET_F6_ANIM_BSSTAND_PULL_KAZOOIE); animctrl_setDuration(anim_ctrl, 5.0f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_ONCE); func_802875AC(anim_ctrl, "bsstand.c", 0x170); @@ -240,12 +241,12 @@ void bsstand_update(void) { D_8037D540 = func_802B4870(D_8037D540); sp18 = D_80364D20[D_8037D540]; if (sp18 & 0x10) { - func_8028A180(0x95, 5.5f); + func_8028A180(ASSET_95_ANIM_BSSTAND_KAZOOIE_PECK, 5.5f); _func_802875AC(anim_ctrl, "bsstand.c", 0x1AB); func_8029E070(1); func_802900FC(); } else if (sp18 & 0x20) { - func_8028A180(0x95, 5.5f); + func_8028A180(ASSET_95_ANIM_BSSTAND_KAZOOIE_PECK, 5.5f); func_8029E070(1); func_802900FC(); } else if (sp18 & 8) { @@ -287,7 +288,7 @@ void bsstand_landing_update(void){ s32 sp1C = 0; AnimCtrl * sp18 = _player_getAnimCtrlPtr(); - if(animctrl_getIndex(sp18) == 0xd2){ + if(animctrl_getIndex(sp18) == ASSET_D2_ANIM_BSSPLAT){ if(animctrl_isAt(sp18, 0.8264f)){ func_80299CF4(SFX_6F_BANJO_HEADSCRATCH, 1.0f, 0x36b0); } @@ -312,7 +313,7 @@ void func_802B5350(void){ bs_setState(0x52); } if(sp1C == 0x7){ - if(_player_getTransformation() != TRANSFORM_1_BANJO) + if(bsStoredState_getTransformation() != TRANSFORM_1_BANJO) func_8029A86C(1); else{ func_802948F8(baMarker_8028D688()); @@ -321,7 +322,7 @@ void func_802B5350(void){ } else if(sp1C == 0x12){//L802B53D0 func_8029A86C(1); - if( _player_getTransformation() == TRANSFORM_1_BANJO && !miscflag_isTrue(0xF) && func_802916CC(0)){ + if( bsStoredState_getTransformation() == TRANSFORM_1_BANJO && !miscflag_isTrue(0xF) && stateTimer_isDone(STATE_TIMER_0_UNKNOWN)){ func_8028DE6C(baMarker_getCarriedObjectActorId()); func_8029A86C(2); } diff --git a/src/core2/bs/swim.c b/src/core2/bs/swim.c index 23d8ea10..1e63e62d 100644 --- a/src/core2/bs/swim.c +++ b/src/core2/bs/swim.c @@ -15,13 +15,13 @@ s16 D_80364D50[10] = { ASSET_57_ANIM_BSSWIM_IDLE, ASSET_57_ANIM_BSSWIM_IDLE, ASSET_57_ANIM_BSSWIM_IDLE, - 0x58, + ASSET_58_ANIM_BSSWIM_IDLE2, ASSET_57_ANIM_BSSWIM_IDLE, - 0x58, + ASSET_58_ANIM_BSSWIM_IDLE2, ASSET_57_ANIM_BSSWIM_IDLE, ASSET_57_ANIM_BSSWIM_IDLE, - 0x58, - 0x58 + ASSET_58_ANIM_BSSWIM_IDLE2, + ASSET_58_ANIM_BSSWIM_IDLE2 }; /* .bss */ @@ -196,9 +196,9 @@ void func_802B5B18(void) { } else { anim_duration = 0.4f; } - if (animctrl_getIndex(anim_ctrl) != ASSET_39_ANIM_BSSWIM_SWIM) { + if (animctrl_getIndex(anim_ctrl) != ASSET_39_ANIM_BSSWIM_MOVE) { animctrl_reset(anim_ctrl); - animctrl_setIndex(anim_ctrl, ASSET_39_ANIM_BSSWIM_SWIM); + animctrl_setIndex(anim_ctrl, ASSET_39_ANIM_BSSWIM_MOVE); animctrl_setTransitionDuration(anim_ctrl, anim_duration); func_8028774C(anim_ctrl, 0.8f); animctrl_setPlaybackType(anim_ctrl, ANIMCTRL_LOOP); diff --git a/src/core2/bs/throw.c b/src/core2/bs/throw.c index 41fa06c1..2e010acd 100644 --- a/src/core2/bs/throw.c +++ b/src/core2/bs/throw.c @@ -1,6 +1,7 @@ #include #include "functions.h" #include "variables.h" +#include "core2/statetimer.h" extern ActorMarker *carriedobj_getMarker(void); @@ -56,8 +57,8 @@ void bsthrow_update(void){ void bsthrow_end(void){ D_8037D580 = 0; if(bs_getNextState() == BS_1_IDLE){ - func_802917E4(0, 0.14f); - func_802917E4(1, 0.28f); + stateTimer_set(STATE_TIMER_0_UNKNOWN, 0.14f); + stateTimer_set(STATE_TIMER_1_THROW, 0.28f); } } diff --git a/src/core2/bs/timeout.c b/src/core2/bs/timeout.c index 4d75ff1e..90d81407 100644 --- a/src/core2/bs/timeout.c +++ b/src/core2/bs/timeout.c @@ -8,7 +8,7 @@ f32 func_8029B41C(void); void func_802BF2C0(f32); void func_802B6270(void){ - func_8028A180(0x77, 3.2f); + func_8028A180(ASSET_77_ANIM_BSTIMEOUT, 3.2f); func_8029C7F4(1,1,3,2); func_80297970(0.0f); func_802914CC(0xd); diff --git a/src/core2/bs/turn.c b/src/core2/bs/turn.c index 3ef2efdc..71a8953f 100644 --- a/src/core2/bs/turn.c +++ b/src/core2/bs/turn.c @@ -12,7 +12,7 @@ void bsturn_init(void){ f32 sp28[3]; animctrl_reset(aCtrl); - animctrl_setIndex(aCtrl, ANIM_BANJO_TURN); + animctrl_setIndex(aCtrl, ASSET_E_ANIM_BSTURN); animctrl_setDuration(aCtrl, 0.3f); animctrl_setTransitionDuration(aCtrl,0.1f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); @@ -49,7 +49,7 @@ void bsturn_update(void){ }//L802B6978 if(animctrl_isStopped(_player_getAnimCtrlPtr())) - sp2C = BS_WALK_FAST; + sp2C = BS_4_WALK_FAST; if(button_held(BUTTON_Z)) sp2C = BS_CROUCH; diff --git a/src/core2/bs/twirl.c b/src/core2/bs/twirl.c index 752a353e..06db2650 100644 --- a/src/core2/bs/twirl.c +++ b/src/core2/bs/twirl.c @@ -16,7 +16,7 @@ void bstwirl_init(void){ AnimCtrl *aCtrl = _player_getAnimCtrlPtr(); animctrl_reset(aCtrl); animctrl_setSmoothTransition(aCtrl, 0); - animctrl_setIndex(aCtrl, ANIM_BANJO_ROLL); + animctrl_setIndex(aCtrl, ASSET_4F_ANIM_BSTWIRL); animctrl_setDuration(aCtrl, 0.9f); animctrl_setSubRange(aCtrl, 0.0f, 1.0f); animctrl_setPlaybackType(aCtrl, ANIMCTRL_ONCE); diff --git a/src/core2/bs/walk.c b/src/core2/bs/walk.c index 3a135499..6f38f5f3 100644 --- a/src/core2/bs/walk.c +++ b/src/core2/bs/walk.c @@ -126,7 +126,7 @@ void bswalk_creep_init(void){ sp20 = 0.0f; } animctrl_reset(s0); - animctrl_setIndex(s0, ANIM_BANJO_WALK_CREEP); + animctrl_setIndex(s0, ASSET_2_ANIM_BSWALK_CREEP); animctrl_setDuration(s0, 0.43f); func_8028774C(s0, sp20); animctrl_setPlaybackType(s0, ANIMCTRL_LOOP); @@ -158,7 +158,7 @@ void bswalk_creep_update(void){ s0 = BS_WALK; break; case 4: - s0 = BS_WALK_FAST; + s0 = BS_4_WALK_FAST; break; }//L802B7194 if(func_8028B128()) @@ -231,7 +231,7 @@ void bswalk_slow_upate(void){ s0 = BS_WALK; break; case 4: - s0 = BS_WALK_FAST; + s0 = BS_4_WALK_FAST; break; }//L802B7194 if(func_8028B128()) @@ -276,7 +276,7 @@ void bswalk_init(void){ break; } animctrl_reset(s0); - animctrl_setIndex(s0, ANIM_BANJO_RUN); + animctrl_setIndex(s0, ASSET_C_ANIM_BSWALK_RUN); animctrl_setDuration(s0, 0.66f); animctrl_setTransitionDuration(s0, 0.14f); func_8028774C(s0, sp20); @@ -303,7 +303,7 @@ void bswalk_update(void){ s0 = BS_2_WALK_SLOW; break; case 4: - s0 = BS_WALK_FAST; + s0 = BS_4_WALK_FAST; break; }//L802B76B8 if(func_8028B128()) @@ -360,7 +360,7 @@ void bswalk_fast_init(void){ } animctrl_reset(s0); animctrl_setSmoothTransition(s0, sp24); - animctrl_setIndex(s0, ANIM_BANJO_RUN); + animctrl_setIndex(s0, ASSET_C_ANIM_BSWALK_RUN); animctrl_setDuration(s0, 0.66f); animctrl_setTransitionDuration(s0, 0.1f); func_8028774C(s0, sp28); @@ -444,7 +444,7 @@ void bswalk_fast_end(void){ } void bswalk_mud_init(void){ - func_8028A010(ANIM_BANJO_WALK_MUD, 0.43f); + func_8028A010(ASSET_B_ANIM_BSWALK_MUD, 0.43f); func_8029C7F4(2,1,1,2); func_80289EA8(0.3f, 1.5f); func_80289EC8(D_80364D84, D_80364D88, D_80364DB0, D_80364DB4); diff --git a/src/core2/bsStoredState.c b/src/core2/bsStoredState.c new file mode 100644 index 00000000..31fc2fd4 --- /dev/null +++ b/src/core2/bsStoredState.c @@ -0,0 +1,61 @@ +#include +#include "functions.h" +#include "variables.h" + +struct { + f32 longleg_timer; //longleg_timer + f32 turbo_timer; //turbotrot_timer + u8 transformation; +} bsStoredState; +u8 bsStoredStateInTrot; //in trot + +/* .code */ +void func_8029A890(void){ + func_802957FC(); +} + +void bsStoredState_clear(void){ + func_80295804(); + bsStoredState.longleg_timer = bsStoredState.turbo_timer = 0.0f; + bsStoredState.transformation = TRANSFORM_1_BANJO; + bsStoredStateInTrot = FALSE; +} + +enum transformation_e bsStoredState_getTransformation(void){ + return bsStoredState.transformation; +} + +f32 bsStoredState_getLongLegTimer(void){ + return bsStoredState.longleg_timer; +} + +f32 bsStoredState_getTurboTimer(void){ + return bsStoredState.turbo_timer; +} + +s32 bsStoredState_getTrotFlag(void){ + return bsStoredStateInTrot; +} + +void bsStoredState_8029A924(void){} + +void bsStoredState_clearTimers(void){ + bsStoredState_setLongLegTimer(0.0f); + bsStoredState_setTurboTimer(0.0f); +} + +void player_setTransformation(enum transformation_e xform_id){ + bsStoredState.transformation = xform_id; +} + +void bsStoredState_setLongLegTimer(f32 arg0){ + bsStoredState.longleg_timer = arg0; +} + +void bsStoredState_setTurboTimer(f32 arg0){ + bsStoredState.turbo_timer = arg0; +} + +void bsStoredState_setTrot(bool arg0){ + bsStoredStateInTrot = arg0; +} diff --git a/src/core2/ch/beehive.c b/src/core2/ch/beehive.c index c6dc8cde..9a08a0f9 100644 --- a/src/core2/ch/beehive.c +++ b/src/core2/ch/beehive.c @@ -30,7 +30,7 @@ void func_802CE7E0(ActorMarker *marker, ActorMarker *other){ __spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM, reinterpret_cast(s32, actor->position[0]), reinterpret_cast(s32, actor->position[1]), reinterpret_cast(s32, actor->position[2])); __spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4A_WOOD_EXPLOSION, reinterpret_cast(s32, actor->position[0]), reinterpret_cast(s32, actor->position[1]), reinterpret_cast(s32, actor->position[2])); actor->marker->propPtr->unk8_3 = 0; - func_803115C4(ASSET_D96_TEXT_BEEHIVE); + func_803115C4(ASSET_D96_DIALOG_BEEHIVE_MEET); func_803115C4(ASSET_DA6_TEXT_BEEHIVE_WITH_BEES); } @@ -57,7 +57,7 @@ void func_802CE8D4(Actor *this){ ){ if(func_8028ECAC() == 0 || func_8028ECAC() == BSGROUP_8_TROT){ if( player_getTransformation() == TRANSFORM_1_BANJO - && func_80311480(ASSET_D96_TEXT_BEEHIVE, 0, NULL, NULL, NULL, 0) + && func_80311480(ASSET_D96_DIALOG_BEEHIVE_MEET, 0, NULL, NULL, NULL, 0) ){ func_80320004(BKPROG_D_BEEHIVE_TEXT, 1); } diff --git a/src/core2/ch/collectable.c b/src/core2/ch/collectible.c similarity index 71% rename from src/core2/ch/collectable.c rename to src/core2/ch/collectible.c index a45f6cda..96b00665 100644 --- a/src/core2/ch/collectable.c +++ b/src/core2/ch/collectible.c @@ -6,34 +6,34 @@ extern void actor_setOpacity(Actor*,s32); extern void func_8035644C(u32); -bool chcollectable_collectItem(Actor*, u32, enum asset_e, enum comusic_e, enum item_e, f32); -Actor *chCollectable_draw(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3); -void chCollectable_update(Actor *this); +bool chCollectible_collectItem(Actor*, u32, enum asset_e, enum comusic_e, enum item_e, f32); +Actor *chCollectible_draw(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3); +void chCollectible_update(Actor *this); /* .data */ extern ActorInfo D_80367D00 = { - MARKER_60_BLUE_EGG_COLLECTABLE, ACTOR_52_BLUE_EGG, ASSET_36D_SPRITE_BLUE_EGG, + MARKER_60_BLUE_EGG_COLLECTIBLE, ACTOR_52_BLUE_EGG, ASSET_36D_SPRITE_BLUE_EGG, 0, NULL, - chCollectable_update, func_80326224, chCollectable_draw, + chCollectible_update, func_80326224, chCollectible_draw, 0, 0, 0.7f, 0 }; extern ActorInfo D_80367D24 = { - MARKER_B5_RED_FEATHER_COLLECTABLE, ACTOR_129_RED_FEATHER, ASSET_580_SPRITE_RED_FEATHER, + MARKER_B5_RED_FEATHER_COLLECTIBLE, ACTOR_129_RED_FEATHER, ASSET_580_SPRITE_RED_FEATHER, 0, NULL, - chCollectable_update, func_80326224, chCollectable_draw, + chCollectible_update, func_80326224, chCollectible_draw, 0, 0, 0.5f, 0 }; extern ActorInfo D_80367D48 = { - MARKER_1E5_GOLD_FEATHER_COLLECTABLE, ACTOR_370_GOLD_FEATHER, ASSET_6D1_SPRITE_GOLDFEATHTER, + MARKER_1E5_GOLD_FEATHER_COLLECTIBLE, ACTOR_370_GOLD_FEATHER, ASSET_6D1_SPRITE_GOLDFEATHTER, 0, NULL, - chCollectable_update, func_80326224, chCollectable_draw, + chCollectible_update, func_80326224, chCollectible_draw, 0, 0, 0.5f, 0 }; /* .code */ -void chcollectable_setState(Actor *arg0, s32 next_state){ +void chCollectible_setState(Actor *arg0, s32 next_state){ switch(next_state){ default: break; @@ -55,15 +55,15 @@ void func_802D8C98(Actor *this, s32 arg1) { switch (this->marker->unk14_20) { - case MARKER_60_BLUE_EGG_COLLECTABLE: + case MARKER_60_BLUE_EGG_COLLECTIBLE: phi_v0 = TRUE; break; - case MARKER_B5_RED_FEATHER_COLLECTABLE: + case MARKER_B5_RED_FEATHER_COLLECTIBLE: phi_v0 = (arg1 == 1) || (arg1 == 2) || (arg1 == 3); break; - case MARKER_1E5_GOLD_FEATHER_COLLECTABLE: + case MARKER_1E5_GOLD_FEATHER_COLLECTIBLE: phi_v0 = TRUE; break; @@ -73,10 +73,10 @@ void func_802D8C98(Actor *this, s32 arg1) { } this->unk10_12 = arg1; - chcollectable_setState(this, (phi_v0 ) ? 2 : 3); + chCollectible_setState(this, (phi_v0 ) ? 2 : 3); } -bool chcollectable_collectItem(Actor* actor, u32 arg1, enum asset_e dialogId, enum comusic_e sfxId, enum item_e itemId, f32 arg5){ +bool chCollectible_collectItem(Actor* actor, u32 arg1, enum asset_e dialogId, enum comusic_e sfxId, enum item_e itemId, f32 arg5){ func_8025A6EC(sfxId,32000); timedFunc_set_1(0.75f, (GenMethod_1)func_8035644C, arg1); if(!func_802FADD4(0x1b)){ @@ -89,37 +89,37 @@ bool chcollectable_collectItem(Actor* actor, u32 arg1, enum asset_e dialogId, en return TRUE; actor->unk60 = arg5; - chcollectable_setState(actor, 1); + chCollectible_setState(actor, 1); return FALSE; } -s32 chcollectable_collectEgg(ActorProp *arg0){ +s32 chCollectible_collectEgg(ActorProp *arg0){ Actor *actPtr = NULL; if(arg0 != NULL){ fxSparkle_blueEgg(&arg0->x); if(arg0->unk8_0) actPtr = marker_getActor(arg0->marker); } - chcollectable_collectItem(actPtr, 5, 0xD9E, COMUSIC_C_EGG_COLLECTED, 0xD, 2.0f); + chCollectible_collectItem(actPtr, 5, 0xD9E, COMUSIC_C_EGG_COLLECTED, 0xD, 2.0f); } -void chcollectable_collectRedFeather(ActorProp *arg0){ +void chCollectible_collectRedFeather(ActorProp *arg0){ Actor *actPtr = NULL; fxSparkle_redFeather(&arg0->x); if(arg0->unk8_0) actPtr = marker_getActor(arg0->marker); - chcollectable_collectItem(actPtr, 6, 0xD9F, COMUSIC_B_RED_FEATHER_COLLECTED, 0xF, 4.0f); + chCollectible_collectItem(actPtr, 6, 0xD9F, COMUSIC_B_RED_FEATHER_COLLECTED, 0xF, 4.0f); } -void chcollectable_collectGoldFeather(ActorProp *arg0){ +void chCollectible_collectGoldFeather(ActorProp *arg0){ Actor *actPtr = NULL; fxSparkle_goldFeather(&arg0->x); if(arg0->unk8_0) actPtr = marker_getActor(arg0->marker); - chcollectable_collectItem(actPtr, 7, 0xDA0, COMUSIC_14_GOLD_FEATHER_COLLECTED, ITEM_10_GOLD_FEATHER, 6.0f); + chCollectible_collectItem(actPtr, 7, 0xDA0, COMUSIC_14_GOLD_FEATHER_COLLECTED, ITEM_10_GOLD_FEATHER, 6.0f); } -Actor *chCollectable_draw(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3){ +Actor *chCollectible_draw(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3){ Actor *thisActor = marker_getActor(this); if(thisActor->unk28 != 0.0f){ @@ -136,7 +136,7 @@ Actor *chCollectable_draw(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3){ return thisActor; } -void chCollectable_update(Actor *this) { +void chCollectible_update(Actor *this) { f32 temp_f0; f32 temp_f0_2; f32 temp_f2; @@ -163,7 +163,7 @@ void chCollectable_update(Actor *this) { if (this->unk60 > 0.0) { this->unk60 -= time_getDelta(); } else { - chcollectable_setState(this, 2); + chCollectible_setState(this, 2); } /* fallthrough */ case 3: diff --git a/src/core2/code_440B0.c b/src/core2/ch/crab.c similarity index 63% rename from src/core2/code_440B0.c rename to src/core2/ch/crab.c index 6785512a..417efa01 100644 --- a/src/core2/code_440B0.c +++ b/src/core2/ch/crab.c @@ -4,44 +4,42 @@ extern bool func_80259254(f32[3], f32, f32, f32); -void func_802CBAAC(Actor *this); - /* .data */ -ActorAnimationInfo D_80367010[] ={ +ActorAnimationInfo chCrabAnimations[] ={ { 0, 0.0f}, - {0x1DA, 0.8f}, - { 0x2C, 2.0f}, - { 0x2C, 1.4f}, - { 0x2C, 0.7f}, - { 0x96, 0.5f}, - { 0x97, 0.8f}, - {0x155, 0.55f}, - { 0x2C, 1.4f}, - { 0x2C, 4.0f} + { ASSET_1DA_ANIM_CRAB_IDLE, 0.8f}, + { ASSET_2C_ANIM_CRAB_WALK, 2.0f}, + { ASSET_2C_ANIM_CRAB_WALK, 1.4f}, + { ASSET_2C_ANIM_CRAB_WALK, 0.7f}, + { ASSET_96_ANIM_CRAB_UPSIDEDOWN, 0.5f}, + { ASSET_97_ANIM_CRAB_FLIP_UPSIDEDOWN, 0.8f}, + { ASSET_155_ANIM_CRAB_FLIP_UPRIGHT, 0.55f}, + { ASSET_2C_ANIM_CRAB_WALK, 1.4f}, + { ASSET_2C_ANIM_CRAB_WALK, 4.0f} }; -ActorAnimationInfo D_80367060[] = { +ActorAnimationInfo chCrabMutantAnimations[] = { {0x000, 0.0f}, - {0x1DB, 0.8f}, - {0x156, 2.0f}, - {0x156, 1.4f}, - {0x156, 0.7f}, - {0x158, 0.5f}, - {0x157, 0.8f}, - {0x159, 0.55f}, - {0x156, 1.4f}, - {0x156, 2.0f} + {ASSET_1DB_ANIM_MUTANT_CRAB_IDLE, 0.8f}, + {ASSET_156_ANIM_MUTANT_CRAB_WALK, 2.0f}, + {ASSET_156_ANIM_MUTANT_CRAB_WALK, 1.4f}, + {ASSET_156_ANIM_MUTANT_CRAB_WALK, 0.7f}, + {ASSET_158_ANIM_MUTANT_CRAB_UPSIDEDOWN, 0.5f}, + {ASSET_157_ANIM_MUTANT_CRAB_FLIP_UPSIDEDOWN, 0.8f}, + {ASSET_159_ANIM_MUTANT_CRAB_UPRIGHT, 0.55f}, + {ASSET_156_ANIM_MUTANT_CRAB_WALK, 1.4f}, + {ASSET_156_ANIM_MUTANT_CRAB_WALK, 2.0f} }; /* .code */ -void func_802CB040(Actor *this) { +void __chCrab_802CB040(Actor *this) { this->unk28 = randf2(1.5f, 2.3f); } -void func_802CB078(Actor *this) { +void __chCrab_802CB078(Actor *this) { u32 temp_t9; - if ((this->modelCacheIndex != 0xF2) || func_8038B550()) { + if ((this->modelCacheIndex != ACTOR_F2_BLACK_SNIPPET) || func_8038B550()) { temp_t9 = (u32) this->unk38_31 >> 0x16; if (this->unk38_31 != 0) { this->unk38_31--; @@ -49,7 +47,7 @@ void func_802CB078(Actor *this) { } else{ if( func_80329530(this, 1500) - && ( (this->modelCacheIndex == 0xF2) || func_803292E0(this)) + && ( (this->modelCacheIndex == ACTOR_F2_BLACK_SNIPPET) || func_803292E0(this)) ) { this->unk28 = 0.0f; func_80328A84(this, 3U); @@ -58,42 +56,42 @@ void func_802CB078(Actor *this) { } } -void func_802CB140(Actor *this) { +void __chCrab_802CB140(Actor *this) { func_80328A84(this, 2U); - func_802CB040(this); + __chCrab_802CB040(this); func_80328CEC(this, (s32) this->yaw_ideal, 135, 175); this->unk38_31 = 150; } -void func_802CB1A4(ActorMarker *marker, ActorMarker *other){ +void __chCrab_touch(ActorMarker *marker, ActorMarker *other){ Actor *this; this = marker_getActor(marker); if ((this->state == 4) && func_803294F0(this, 80, func_80329784(this))) { FUNC_8030E8B4(SFX_1E_HITTING_AN_ENEMY_2, 1.0f, 28000, this->position, 950, 1900); - func_802CB140(this); + __chCrab_802CB140(this); func_80328A84(this, 1); } } -void func_802CB22C(ActorMarker *marker, ActorMarker *other) { +void __chCrab_ow(ActorMarker *marker, ActorMarker *other) { Actor *this; this = marker_getActor(marker); this->unk60 = 3.0f; func_80328A84(this, 6); actor_playAnimationOnce(this); - if (marker->unk14_20 == 0x13) { + if (marker->unk14_20 == MARKER_13_SNIPPET) { FUNC_8030E8B4(SFX_6E_VILE_EGH, 2.0f, 26000, this->position, 950, 1900); - marker->unk14_20 = 0x16B; + marker->unk14_20 = MARKER_16B_SNIPPET_UPSIDEDOWN; } - if (marker->unk14_20 == 0xDD) { + if (marker->unk14_20 == MARKER_DD_BLACK_SNIPPET) { FUNC_8030E8B4(SFX_6E_VILE_EGH, 2.0f, 26000, this->position, 950, 1900); - marker->unk14_20 = 0xDE; + marker->unk14_20 = MARKER_DE_BLACK_SNIPPET_UPSIDEDOWN; } } -void func_802CB310(ParticleEmitter *p_ctrl, f32 position[3]) { +void __chCrab_particleEmitterSetup(ParticleEmitter *p_ctrl, f32 position[3]) { particleEmitter_setPosition(p_ctrl, position); particleEmitter_setDrawMode(p_ctrl, 2); func_802EF9F8(p_ctrl, 0.7f); @@ -106,8 +104,8 @@ void func_802CB310(ParticleEmitter *p_ctrl, f32 position[3]) { } -void func_802CB3C8(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_id) { - func_802CB310(p_ctrl, position); +void __chCrab_emitClawPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_id) { + __chCrab_particleEmitterSetup(p_ctrl, position); particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f); particleEmitter_setModel(p_ctrl, model_id); func_802EFB70(p_ctrl, 0.5f, 0.8f); @@ -116,8 +114,8 @@ void func_802CB3C8(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_ particleEmitter_emitN(p_ctrl, 2); } -void func_802CB4B8(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_id) { - func_802CB310(p_ctrl, position); +void __chCrab_emitLegPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_id) { + __chCrab_particleEmitterSetup(p_ctrl, position); particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f); particleEmitter_setModel(p_ctrl, model_id); func_802EFB70(p_ctrl, 0.5f, 0.8f); @@ -126,8 +124,8 @@ void func_802CB4B8(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_ particleEmitter_emitN(p_ctrl, 6); } -void func_802CB5A8(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_id) { - func_802CB310(p_ctrl, position); +void __chCrab_emitHeadPiece(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_id) { + __chCrab_particleEmitterSetup(p_ctrl, position); particleEmitter_setParticleAccelerationRange(p_ctrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f); particleEmitter_setModel(p_ctrl, model_id); func_802EFB70(p_ctrl, 1.0f, 1.0f); @@ -136,20 +134,20 @@ void func_802CB5A8(ParticleEmitter *p_ctrl, f32 position[3], enum asset_e model_ particleEmitter_emitN(p_ctrl, 1); } -void func_802CB6A0(void) { +void __chCrab_spawn_mutant_crab_jiggy(void) { f32 sp1C[3]; sp1C[0] = 13814.0f; sp1C[1] = 3812.0f; sp1C[2] = 0.0f; - jiggySpawn(0x16U, sp1C); + jiggySpawn(JIGGY_16_CC_SNIPPETS, sp1C); } -void func_802CB6E4(ActorMarker *caller, enum asset_e text_id, s32 model_id){ - if (text_id == 0xD33) { +void __chCrab_mutantTextCallback(ActorMarker *caller, enum asset_e text_id, s32 model_id){ + if (text_id == ASSET_D33_DIALOG_MUTANT_CRAB_DEFEAT) { func_80324E38(0.0f, 3); timed_setCameraToNode(0.0f, 4); - timedFunc_set_0(0.1f, func_802CB6A0); + timedFunc_set_0(0.1f, __chCrab_spawn_mutant_crab_jiggy); func_80324E88(3.0f); func_80324E38(3.0f, 0); return; @@ -157,28 +155,28 @@ void func_802CB6E4(ActorMarker *caller, enum asset_e text_id, s32 model_id){ levelSpecificFlags_set(0xE, FALSE); } -bool func_802CB76C(ActorMarker *marker, ActorMarker *other) { +bool __chCrab_802CB76C(ActorMarker *marker, ActorMarker *other) { Actor *this; this = marker_getActor(marker); - if ((this->modelCacheIndex == 0xF2) && !func_8038B550()) { + if ((this->modelCacheIndex == ACTOR_F2_BLACK_SNIPPET) && !func_8038B550()) { return FALSE; } return TRUE; } -void func_802CB7C0(ActorMarker *marker, ActorMarker *other){ +void __chCrab_die(ActorMarker *marker, ActorMarker *other){ Actor *this; - f32 sp48[3]; + f32 jiggy_spawn_position[3]; f32 sp44; - bool sp40; - bool sp3C; - s32 phi_a2; + bool is_mutant_snippet; + bool is_black_snippet; + s32 model_id; ParticleEmitter *p_ctrl; this = marker_getActor(marker); - sp40 = this->modelCacheIndex == 0xF5; - sp3C = this->modelCacheIndex == 0xF2; + is_mutant_snippet = this->modelCacheIndex == ACTOR_F5_MUTIE_SNIPPET; + is_black_snippet = this->modelCacheIndex == ACTOR_F2_BLACK_SNIPPET; FUNC_8030E8B4(SFX_79_TICKER_DEATH, 1.0f, 32750, this->position, 950, 1900); FUNC_8030E8B4(SFX_79_TICKER_DEATH, 1.0f, 28000, this->position, 950, 1900); __spawnQueue_add_4((GenMethod_4)func_802C4140, ACTOR_4C_STEAM, reinterpret_cast(s32, this->position[0]), reinterpret_cast(s32, this->position[1]), reinterpret_cast(s32, this->position[2])); @@ -191,28 +189,34 @@ void func_802CB7C0(ActorMarker *marker, ActorMarker *other){ ) { this->depth_mode = MODEL_RENDER_DEPTH_COMPARE; if( !jiggyscore_isCollected(JIGGY_16_CC_SNIPPETS) - && ((actorArray_findClosestActorFromActorId(this->position, 0xF5, -1, &sp44) == NULL) || (3000.0f < sp44))) { - sp48[0] = 13814.0f; - sp48[1] = 3812.0f; - sp48[2] = 0.0f; + && ((actorArray_findClosestActorFromActorId(this->position, ACTOR_F5_MUTIE_SNIPPET, -1, &sp44) == NULL) || (3000.0f < sp44))) { + jiggy_spawn_position[0] = 13814.0f; + jiggy_spawn_position[1] = 3812.0f; + jiggy_spawn_position[2] = 0.0f; func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x7FFF); - func_80324DBC(2.25f, 0xD33, 0xF, sp48, NULL, func_802CB6E4, NULL); + func_80324DBC(2.25f, ASSET_D33_DIALOG_MUTANT_CRAB_DEFEAT, 0xF, jiggy_spawn_position, NULL, __chCrab_mutantTextCallback, NULL); } } p_ctrl = partEmitMgr_newEmitter(2); - phi_a2 = (sp40) ? 0x392 : (sp3C) ? 0x569 : 0x38C; - func_802CB3C8(p_ctrl, this->position, phi_a2); + model_id = (is_mutant_snippet) ? ASSET_392_MODEL_MUTANT_CRAB_CLAW + : (is_black_snippet) ? ASSET_569_MODEL_BLACK_CRAB_CLAW + : ASSET_38C_MODEL_CRAB_CLAW; + __chCrab_emitClawPiece(p_ctrl, this->position, model_id); p_ctrl = partEmitMgr_newEmitter(6); - phi_a2 = (sp40) ? 0x391 : (sp3C) ? 0x568 : 0x38D; - func_802CB4B8(p_ctrl, this->position, phi_a2); + model_id = (is_mutant_snippet) ? ASSET_391_MODEL_MUTANT_CRAB_LEG + : (is_black_snippet) ? ASSET_568_MODEL_BLACK_CRAB_LEG + : ASSET_38D_MODEL_CRAB_LEG; + __chCrab_emitLegPiece(p_ctrl, this->position, model_id); p_ctrl = partEmitMgr_newEmitter(1); - phi_a2 = (sp40) ? 0x390 : (sp3C) ? 0x567 : 0x38E; - func_802CB5A8(p_ctrl, this->position, phi_a2); + model_id = (is_mutant_snippet) ? ASSET_390_MODEL_MUTANT_CRAB_HEAD + : (is_black_snippet) ? ASSET_567_MODEL_BLACK_CRAB_HEAD + : ASSET_38E_MODEL_CRAB_HEAD; + __chCrab_emitHeadPiece(p_ctrl, this->position, model_id); } -void func_802CBA34(Actor *this) { +void __chCrab_walkSfxUpdate(Actor *this) { if (actor_animationIsAt(this, 0.4f)) { FUNC_8030E8B4(SFX_3D_TICKER_WALKING, 0.85f, 15000, this->position, 950, 1900); } @@ -221,19 +225,19 @@ void func_802CBA34(Actor *this) { } } -void func_802CBAAC(Actor *this) { +void chCrab_update(Actor *this) { s32 sp34; f32 sp30; - s32 sp2C; + bool is_mutant_snippet; static s32 D_803670B0 = 0; static s32 D_803670B4 = 0; sp34 = func_8023DB5C(); sp30 = time_getDelta(); - sp2C = this->modelCacheIndex == 0xF5; + is_mutant_snippet = this->modelCacheIndex == ACTOR_F5_MUTIE_SNIPPET; if (!this->unk16C_4) { - marker_setCollisionScripts(this->marker, func_802CB1A4, func_802CB22C, func_802CB7C0); - func_803300C0(this->marker, &func_802CB76C); + marker_setCollisionScripts(this->marker, __chCrab_touch, __chCrab_ow, __chCrab_die); + func_803300C0(this->marker, &__chCrab_802CB76C); this->unk124_0 = this->unk138_31 = FALSE; this->unk138_24 = FALSE; this->unk16C_4 = TRUE; @@ -260,13 +264,13 @@ void func_802CBAAC(Actor *this) { } if( (map_get() == MAP_B_CC_CLANKERS_CAVERN) && !mapSpecificFlags_get(0) - && sp2C + && is_mutant_snippet && !jiggyscore_isCollected(JIGGY_16_CC_SNIPPETS) && func_80329530(this, 500) && !func_80329530(this, 200) && !func_8028ECAC() ) { if ((this->state != 6) && (this->state != 5)) { - func_80311480(0xD32, 0xF, this->position, NULL, func_802CB6E4, NULL); + func_80311480(ASSET_D32_DIALOG_MUTANT_CRAB_MEET, 0xF, this->position, NULL, __chCrab_mutantTextCallback, NULL); mapSpecificFlags_set(0, TRUE); levelSpecificFlags_set(0xE, TRUE); this->unk138_24 = TRUE; @@ -296,9 +300,9 @@ void func_802CBAAC(Actor *this) { switch(this->state){ case 1: //L802CBE30 if (func_80328B38(this, 2, 0.03f)) { - func_802CB040(this); + __chCrab_802CB040(this); } - func_802CB078(this); + __chCrab_802CB078(this); break; case 9: //L802CBE6C @@ -309,13 +313,13 @@ void func_802CBAAC(Actor *this) { case 2: //L802CBE9C func_80328FB0(this, 1.0f); - if( func_8032CA80(this, (this->modelCacheIndex == 0xF2)? 0xD: 0) + if( func_8032CA80(this, (this->modelCacheIndex == ACTOR_F2_BLACK_SNIPPET)? 0xD: 0) && func_80329480(this) ) { func_80328CEC(this, (s32) this->yaw, 90, 150); } func_80328BD4(this, 1, 0.0f, 1, 0.0075f); - func_802CB078(this); + __chCrab_802CB078(this); break; case 3: //L802CBF44 @@ -343,8 +347,8 @@ void func_802CBAAC(Actor *this) { this->yaw_ideal = (f32) func_80329784(this); } func_80328FB0(this, 7.0f); - if (func_8032CA80(this, (this->modelCacheIndex == 0xF2)? 0xD : 0)) { - func_802CB140(this); + if (func_8032CA80(this, (this->modelCacheIndex == ACTOR_F2_BLACK_SNIPPET)? 0xD : 0)) { + __chCrab_802CB140(this); } break; @@ -354,10 +358,10 @@ void func_802CBAAC(Actor *this) { func_80328A84(this, 7); actor_playAnimationOnce(this); if (this->marker->unk14_20 == 0x16B) { - this->marker->unk14_20 = 0x13; + this->marker->unk14_20 = MARKER_13_SNIPPET; } if (this->marker->unk14_20 == 0xDE) { - this->marker->unk14_20 = 0xDD; + this->marker->unk14_20 = MARKER_DD_BLACK_SNIPPET; } } break; @@ -385,16 +389,16 @@ void func_802CBAAC(Actor *this) { if (sp34 != D_803670B0) { D_803670B0 = sp34; D_803670B4 = 1; - func_802CBA34(this); + __chCrab_walkSfxUpdate(this); } else if (D_803670B4 != 0) { D_803670B4--; - func_802CBA34(this); + __chCrab_walkSfxUpdate(this); } } } /* .data */ -ActorInfo D_803670B8 = { MARKER_13_SNIPPET, ACTOR_67_SNIPPET, ASSET_358_SNIPPET, 0x1, D_80367010, func_802CBAAC, func_80326224, func_80325888, 1900, 0, 0.8f, 0}; -ActorInfo D_803670DC = { MARKER_DD_BLACK_SNIPPET, ACTOR_F2_BLACK_SNIPPET, ASSET_566_MODEL_BLACK_SNIPPET, 0x1, D_80367010, func_802CBAAC, func_80326224, func_80325888, 1900, 0, 0.8f, 0}; -ActorInfo D_80367100 = { MARKER_13_SNIPPET, ACTOR_F5_MUTIE_SNIPPET, ASSET_38F_MODEL_MUTIE_SNIPPET, 0x1, D_80367060, func_802CBAAC, func_80326224, func_80325888, 1900, 0, 0.8f, 0}; +ActorInfo D_803670B8 = { MARKER_13_SNIPPET, ACTOR_67_SNIPPET, ASSET_358_SNIPPET, 0x1, chCrabAnimations, chCrab_update, func_80326224, func_80325888, 1900, 0, 0.8f, 0}; +ActorInfo D_803670DC = { MARKER_DD_BLACK_SNIPPET, ACTOR_F2_BLACK_SNIPPET, ASSET_566_MODEL_BLACK_SNIPPET, 0x1, chCrabAnimations, chCrab_update, func_80326224, func_80325888, 1900, 0, 0.8f, 0}; +ActorInfo D_80367100 = { MARKER_13_SNIPPET, ACTOR_F5_MUTIE_SNIPPET, ASSET_38F_MODEL_MUTIE_SNIPPET, 0x1, chCrabMutantAnimations, chCrab_update, func_80326224, func_80325888, 1900, 0, 0.8f, 0}; diff --git a/src/core2/code_D7D10.c b/src/core2/ch/gravestone.c similarity index 95% rename from src/core2/code_D7D10.c rename to src/core2/ch/gravestone.c index 78494dda..8991fb5a 100644 --- a/src/core2/code_D7D10.c +++ b/src/core2/ch/gravestone.c @@ -16,24 +16,24 @@ typedef struct { /* .data */ ActorAnimationInfo D_80372F80[] = { {0, 0.0f}, - {0x9A, 8000000.0f}, - {0x9A, 1.3f}, - {0x9B, 0.6f}, - {0x9B, 0.75f}, - {0x9A, 1.5f}, - {0x1ED, 1.0f}, - {0x1EE, 2.4f} + {ASSET_9A_ANIM_GRAVESTONE_IDLE, 8000000.0f}, + {ASSET_9A_ANIM_GRAVESTONE_IDLE, 1.3f}, + {ASSET_9B_ANIM_GRAVESTONE_WALK, 0.6f}, + {ASSET_9B_ANIM_GRAVESTONE_WALK, 0.75f}, + {ASSET_9A_ANIM_GRAVESTONE_IDLE, 1.5f}, + {ASSET_1ED_ANIM_GRAVESTONE_OW, 1.0f}, + {ASSET_1EE_ANIM_GRAVESTONE_DIE, 2.4f} }; ActorInfo D_80372FC0 = { - MARKER_96_RIPPER, ACTOR_C7_RIPPER, ASSET_3C9_MODEL_RIPPER, + MARKER_96_GRAVESTONE, ACTOR_C7_GRAVESTONE, ASSET_3C9_MODEL_GRAVESTONE, 0x1, D_80372F80, func_8035F138, func_80326224, func_8035ECA0, 3500, 0, 1.2f, 0 }; ActorInfo D_80372FE4 = { - MARKER_297_GIANT_RIPPER, ACTOR_3C2_GIANT_RIPPER, ASSET_3C9_MODEL_RIPPER, + MARKER_297_GIANT_GRAVESTONE, ACTOR_3C2_GIANT_GRAVESTONE, ASSET_3C9_MODEL_GRAVESTONE, 0x1, D_80372F80, func_8035F138, func_80326224, func_8035ECA0, 14000, 0, 3.2f, 0 diff --git a/src/core2/ch/jigsawdance.c b/src/core2/ch/jigsawdance.c index 415deaee..eb3304dd 100644 --- a/src/core2/ch/jigsawdance.c +++ b/src/core2/ch/jigsawdance.c @@ -5,28 +5,28 @@ extern f32 func_8028EBA4(); AnimCtrl *player_getAnimCtrlPtr(void); -Actor *func_802C80C0(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3); -void func_802C811C(Actor * this); +Actor *__chJigsawDance_draw(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3); +void __chJigsawDance_update(Actor * this); /* .data */ -ActorAnimationInfo D_803662D0[] = { +ActorAnimationInfo chJigsawDanceAnimations[] = { {0x00, 0.0f}, {0x00, 2.0f}, - {0x76, 1.5f}, - {0x76, 1.5f}, - {0x30, 5.0f}, + {ASSET_76_ANIM_JIGSAWDANCE_HOLD, 1.5f}, + {ASSET_76_ANIM_JIGSAWDANCE_HOLD, 1.5f}, + {ASSET_30_ANIM_JIGSAWDANCE_DANCE, 5.0f}, {0x00, 2.0f} }; -ActorInfo D_80366300 = {0x68, 0x5A, 0x35E, - 1, D_803662D0, - func_802C811C, func_80326224, func_802C80C0, +ActorInfo chJigsawDance = {MARKER_68_JIGSAW_DANCE, ACTOR_5A_JIGSAW_DANCE, ASSET_35E_MODEL_JIGSAW_DANCE, + 1, chJigsawDanceAnimations, + __chJigsawDance_update, func_80326224, __chJigsawDance_draw, 0, 0, 0.0f, 0 }; /* .code */ -Actor *func_802C80C0(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3){ +Actor *__chJigsawDance_draw(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3){ Actor *thisActor = marker_getActor(this); if(!thisActor->initialized){ @@ -38,7 +38,7 @@ Actor *func_802C80C0(ActorMarker *this, Gfx **gdl, Mtx **mptr, Vtx **arg3){ } } -void func_802C811C(Actor * this){ +void __chJigsawDance_update(Actor * this){ AnimCtrl *plyrMvmt; this->marker->collidable = 0; @@ -77,7 +77,7 @@ void func_802C811C(Actor * this){ } } -void func_802C82C0(Actor * this, u32 arg1){ +void chJigsawDance_setState(Actor * this, u32 arg1){ switch(arg1){ case 3: if(this->state == 1){ diff --git a/src/core2/ch/jinjo.c b/src/core2/ch/jinjo.c index bf8dcf76..f7c16b59 100644 --- a/src/core2/ch/jinjo.c +++ b/src/core2/ch/jinjo.c @@ -8,51 +8,46 @@ extern void func_80329904(ActorMarker*, s32, f32*); extern void func_80326310(Actor *); extern void func_8032BB88(Actor *, s32, s32); -void func_802CDD78(Actor *this); +void chJinjo_update(Actor *this); /* .data */ -ActorAnimationInfo D_803671B0[] = { +ActorAnimationInfo chJinjoAnimations[] = { {0, 0.0f}, - {0x2D, 1000000.0f}, - {0x2D, 1.5f}, - {0x2F, 1.5f}, - {0x31, 0.75f}, - {0x2D, 1000000.0f}, - {0x31, 0.4f}, - {0x130, 1.75f}, - {0x131, 2.13333f}, - {0x31, 0.75f} + {ASSET_2D_ANIM_JINJO_IDLE, 1000000.0f}, + {ASSET_2D_ANIM_JINJO_IDLE, 1.5f}, + {ASSET_2F_ANIM_JINJO_HELP, 1.5f}, + {ASSET_31_ANIM_JINJO_JUMP, 0.75f}, + {ASSET_2D_ANIM_JINJO_IDLE, 1000000.0f}, + {ASSET_31_ANIM_JINJO_JUMP, 0.4f}, + {ASSET_130_ANIM_JINJO_FLY_START, 1.75f}, + {ASSET_131_ANIM_JINJO_FLY_END, 2.13333f}, + {ASSET_31_ANIM_JINJO_JUMP, 0.75f} }; -ActorInfo D_80367200 = { 0x5A, 0x60, 0x3C0, 0x1, D_803671B0, func_802CDD78, func_80326224, func_80325888, 0, 0, 0.0f, 0}; -ActorInfo D_80367224 = { 0x5B, 0x62, 0x3C2, 0x1, D_803671B0, func_802CDD78, func_80326224, func_80325888, 0, 0, 0.0f, 0}; -ActorInfo D_80367248 = { 0x5E, 0x5E, 0x3BB, 0x1, D_803671B0, func_802CDD78, func_80326224, func_80325888, 0, 0, 0.0f, 0}; -ActorInfo D_8036726C = { 0x5D, 0x61, 0x3C1, 0x1, D_803671B0, func_802CDD78, func_80326224, func_80325888, 0, 0, 0.0f, 0}; -ActorInfo D_80367290 = { 0x5C, 0x5F, 0x3BC, 0x1, D_803671B0, func_802CDD78, func_80326224, func_80325888, 0, 0, 0.0f, 0}; +ActorInfo chJinjoBlue = { MARKER_5A_JINJO_BLUE, ACTOR_60_JINJO_BLUE, ASSET_3C0_MODEL_JINJO_BLUE, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, func_80325888, 0, 0, 0.0f, 0}; +ActorInfo chJinjoGreen = { MARKER_5B_JINJO_GREEN, ACTOR_62_JINJO_GREEN, ASSET_3C2_MODEL_JINJO_GREEN, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, func_80325888, 0, 0, 0.0f, 0}; +ActorInfo chJinjoYellow = { MARKER_5E_JINJO_YELLOW, ACTOR_5E_JINJO_YELLOW, ASSET_3BB_MODEL_JINJO_YELLOW, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, func_80325888, 0, 0, 0.0f, 0}; +ActorInfo chJinjoPink = { MARKER_5D_JINJO_PINK, ACTOR_61_JINJO_PINK, ASSET_3C1_MODEL_JINJO_PINK, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, func_80325888, 0, 0, 0.0f, 0}; +ActorInfo chJinjoOrange = { MARKER_5C_JINJO_ORANGE, ACTOR_5F_JINJO_ORANGE, ASSET_3BC_MODEL_JINJO_ORANGE, 0x1, chJinjoAnimations, chJinjo_update, func_80326224, func_80325888, 0, 0, 0.0f, 0}; -s32 func_802CDB50(s32 arg0){ - switch(arg0){ - case 0x5A: - return 0xD98; - case 0x5B: - return 0xD99; - case 0x5C: - return 0xD9b; - case 0x5d: - return 0xD9a; - case 0x5e: - return 0xD97; +enum asset_e __chJinjo_getMeetDialogId(enum marker_e marker_id){ + switch(marker_id){ + case MARKER_5A_JINJO_BLUE: return ASSET_D98_DIALOG_JINJO_MEET_BLUE; + case MARKER_5B_JINJO_GREEN: return ASSET_D99_DIALOG_JINJO_MEET_GREEN; + case MARKER_5C_JINJO_ORANGE: return ASSET_D9B_DIALOG_JINJO_MEET_ORANGE; + case MARKER_5D_JINJO_PINK: return ASSET_D9A_DIALOG_JINJO_MEET_PINK; + case MARKER_5E_JINJO_YELLOW: return ASSET_D97_DIALOG_JINJO_MEET_YELLOW; } return 0; } -void func_802CDBA8(ActorMarker *this, s32 arg1){ +void __chJinjo_802CDBA8(ActorMarker *this, ActorMarker *other){ Actor *actorPtr = marker_getActor(this); ActorLocal_Jinjo *localPtr = &actorPtr->jinjo; if(actorPtr->state < 5){ if(!func_8031FF1C(BKPROG_E_JINJO_TEXT)){ - func_80311480(func_802CDB50(actorPtr->marker->unk14_20), 4, 0, 0, 0, 0); + func_80311480(__chJinjo_getMeetDialogId(actorPtr->marker->unk14_20), 4, 0, 0, 0, 0); func_80320004(BKPROG_E_JINJO_TEXT, 1); } func_80328B8C(actorPtr, 6, 0.0f , -1); @@ -63,7 +58,7 @@ void func_802CDBA8(ActorMarker *this, s32 arg1){ } } -void func_802CDC9C(Actor *this, s16 arg1){ +void __chJinjo_802CDC9C(Actor *this, s16 arg1){ f32 tmpf; tmpf = this->yaw; @@ -77,7 +72,7 @@ void func_802CDC9C(Actor *this, s16 arg1){ this->yaw = tmpf; } -void func_802CDD3C(Actor * this){ +void __chJinjo_802CDD3C(Actor * this){ ActorLocal_Jinjo *localPtr = &this->jinjo; if(localPtr->unkC != 0){ func_802F9D38(localPtr->unkC); @@ -85,7 +80,7 @@ void func_802CDD3C(Actor * this){ } } -void func_802CDD78(Actor * this){ +void chJinjo_update(Actor * this){ f32 sp7C[3]; f32 sp70[3]; f32 sp6C; @@ -114,8 +109,8 @@ void func_802CDD78(Actor * this){ local->unk0 = 1; local->unk4 = 0; local->unk8 = (this->position_y < func_80309B24(this->position)); - this->marker->unkC = func_802CDBA8; - marker_setFreeMethod(this->marker, func_802CDD3C); + this->marker->unkC = __chJinjo_802CDBA8; + marker_setFreeMethod(this->marker, __chJinjo_802CDD3C); if(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){ marker_despawn(this->marker); } @@ -168,7 +163,7 @@ void func_802CDD78(Actor * this){ }//L802CE018 break; case 6:/* 47094 802CE024 02002025 */ - func_802CDC9C(this, sp66); + __chJinjo_802CDC9C(this, sp66); if(actor_animationIsAt(this, 0.0f) && --(local->unk0) == 0){ func_80328B8C(this, 7, 0.0f, -1); actor_playAnimationOnce(this); @@ -221,7 +216,7 @@ void func_802CDD78(Actor * this){ if(sp50){ if(animctrl_getAnimTimer(this->animctrl) < 0.2) - func_802CDC9C(this, sp66); + __chJinjo_802CDC9C(this, sp66); if(actor_animationIsAt(this, 0.1f)){ local->unkC = func_802F9AA8(SFX_18_BIGBUTT_SLIDE); @@ -286,8 +281,8 @@ void func_802CDD78(Actor * this){ actor_playAnimationOnce(this); }//L802CE630 if(!func_803114B0()){ - switch(D_803671B0[this->state].index){ - case 0x31: + switch(chJinjoAnimations[this->state].index){ + case ASSET_31_ANIM_JINJO_JUMP: if(actor_animationIsAt(this, 0.6f)){ if(local->unk8){ func_8030E988(SFX_8_BANJO_LANDING_04, 1.8f, 18000, sp30, 120.0f, 1200.0f); @@ -296,7 +291,7 @@ void func_802CDD78(Actor * this){ } } break; - case 0x2D: //L802CE6F4 + case ASSET_2D_ANIM_JINJO_IDLE: //L802CE6F4 if(actor_animationIsAt(this, 0.2f)){ if(local->unk8){ func_8030E988(SFX_17_JINJO_WHISTLE, 1.0f, 22000, sp30, 120.0f, 1200.0f); @@ -305,7 +300,7 @@ void func_802CDD78(Actor * this){ } } break; - case 0x2F: //L802CE760 + case ASSET_2F_ANIM_JINJO_HELP: //L802CE760 if(actor_animationIsAt(this, 0.2f)){ if(local->unk8){ func_8030E988(SFX_27_JINJO_HI, 1.0f, 22000, sp30, 120.0f, 1200.0f); diff --git a/src/core2/ch/mole.c b/src/core2/ch/mole.c index 55639525..52142896 100644 --- a/src/core2/ch/mole.c +++ b/src/core2/ch/mole.c @@ -7,10 +7,10 @@ Actor *func_802D94B4(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); void func_802D9830(ActorMarker *marker, enum asset_e arg1, s32 arg2); typedef struct{ - s16 unk0; - s16 unk2; - s8 unk4; - s8 unk5; + s16 learn_text; + s16 refresher_text; + s8 camera_node; + s8 ability; } struct_core2_52290; /* .data */ @@ -31,16 +31,16 @@ ActorInfo D_80367DA0= { }; struct_core2_52290 D_80367DC4[] = { - {0x0C23, 0x0C24, 0x0F, ABILITY_1_BEAK_BOMB}, - {0x0B47, 0x0B4B, 0x16, ABILITY_6_EGGS}, - {0x0B48, 0x0B4C, 0x17, ABILITY_2_BEAK_BUSTER}, - {0x0B49, 0x0B4A, 0x18, ABILITY_10_TALON_TROT}, - {0x0A1F, 0x0A23, 0x0C, ABILITY_D_SHOCK_JUMP}, - {0x0A20, 0x0A22, 0x0D, ABILITY_9_FLY}, - {0x0D35, 0x0D36, 0x01, ABILITY_12_WONDERWING}, - {0x0C88, 0x0C89, 0x10, ABILITY_E_WADING_BOOTS}, - {0x0A84, 0x0A85, 0x19, ABILITY_11_TURBO_TALON}, - {0x0F64, 0x0F65, 0x0E, ABILITY_13_1ST_NOTEDOOR} + {ASSET_C23_DIALOG_BEAKBOMB_LEARN, ASSET_C24_DIALOG_BEAKBOMB_REFRESHER, 0x0F, ABILITY_1_BEAK_BOMB}, + {ASSET_B47_DIALOG_EGGS_LEARN, ASSET_B4B_DIALOG_EGGS_REFRESHER, 0x16, ABILITY_6_EGGS}, + {ASSET_B48_DIALOG_BEAKBUSTER_LEARN, ASSET_B4C_DIALOG_BEAKBUSTER_REFRESHER, 0x17, ABILITY_2_BEAK_BUSTER}, + {ASSET_B49_DIALOG_TALON_TROT_LEARN, ASSET_B4A_DIALOG_TALON_TROT_REFRESHER, 0x18, ABILITY_10_TALON_TROT}, + {ASSET_A1F_DIALOG_SHOCKJUMP_LEARN, ASSET_A23_DIALOG_SHOCKJUMP_REFRESHER, 0x0C, ABILITY_D_SHOCK_JUMP}, + {ASSET_A20_DIALOG_FLY_LEARN, ASSET_A22_DIALOG_FLY_REFRESHER, 0x0D, ABILITY_9_FLY}, + {ASSET_D35_DIALOG_WONDERWING_LEARN, ASSET_D36_DIALOG_WONDERWING_REFRESHER, 0x01, ABILITY_12_WONDERWING}, + {ASSET_C88_DIALOG_LONGLEG_LEARN, ASSET_C89_DIALOG_LONGLEG_REFRESHER, 0x10, ABILITY_E_WADING_BOOTS}, + {ASSET_A84_DIALOG_TURBOTRAINERS_LEARN, ASSET_A85_DIALOG_TURBOTRAINERS_REFRESHER, 0x19, ABILITY_11_TURBO_TALON}, + {ASSET_F64_DIALOG_NOTEDOORS_LEARN, ASSET_F65_DIALOG_NOTEDOORS_REFRESHER, 0x0E, ABILITY_13_1ST_NOTEDOOR} }; /* .code */ @@ -136,18 +136,18 @@ void func_802D9600(Actor * this){ } void func_802D9658(Actor *this){ - timed_setCameraToNode(0.0f, D_80367DC4[this->unkF4_8-9].unk4); + timed_setCameraToNode(0.0f, D_80367DC4[this->unkF4_8-9].camera_node); } void func_802D9698(ActorMarker *marker, enum asset_e arg1, s32 arg2){ Actor *actor = marker_getActor(marker); - if( arg1 == D_80367DC4[actor->unkF4_8-9].unk0 + if( arg1 == D_80367DC4[actor->unkF4_8-9].learn_text && item_getCount(ITEM_14_HEALTH) < item_getCount(ITEM_15_HEALTH_TOTAL) ){ func_80311480(ASSET_D39_TEXT_BOTTLES_REFILL_HEALTH, 7, 0, actor->marker, func_802D9698, func_802D9830); }//L802D9738 - else if(arg1 == D_80367DC4[actor->unkF4_8-9].unk0 || arg1 == ASSET_D39_TEXT_BOTTLES_REFILL_HEALTH){ + else if(arg1 == D_80367DC4[actor->unkF4_8-9].learn_text || arg1 == ASSET_D39_TEXT_BOTTLES_REFILL_HEALTH){ func_80311480(func_802D93EC()? 0xa87 : func_802D9304(), 7, 0, actor->marker, func_802D9698, NULL); } else{//L802D97BC @@ -206,16 +206,16 @@ void func_802D9830(ActorMarker *marker, enum asset_e arg1, s32 arg2){ int func_802D997C(Actor *this){ s32 sp2C; s32 sp28 = 0xe; - if(ability_isUnlocked(D_80367DC4[this->unkF4_8-9].unk5)){ + if(ability_isUnlocked(D_80367DC4[this->unkF4_8-9].ability)){ sp28 = 0xf; - sp2C = D_80367DC4[this->unkF4_8-9].unk2; + sp2C = D_80367DC4[this->unkF4_8-9].refresher_text; }//L802D99EC else{ func_80347A14(0); this->unk138_24 = 1; - sp2C = D_80367DC4[this->unkF4_8-9].unk0; - ability_unlock(D_80367DC4[this->unkF4_8-9].unk5); - switch(D_80367DC4[this->unkF4_8-9].unk5){ + sp2C = D_80367DC4[this->unkF4_8-9].learn_text; + ability_unlock(D_80367DC4[this->unkF4_8-9].ability); + switch(D_80367DC4[this->unkF4_8-9].ability){ case ABILITY_9_FLY: case ABILITY_D_SHOCK_JUMP: func_8030E6A4(SFX_113_PAD_APPEARS, 0.9f, 32000); @@ -276,7 +276,7 @@ void func_802D9C90(Actor *this){ } void func_802D9CBC(Actor *this){ - if(ability_isUnlocked(D_80367DC4[this->unkF4_8 - 9].unk5)){ + if(ability_isUnlocked(D_80367DC4[this->unkF4_8 - 9].ability)){ func_802D9BD8(this); } else{ @@ -350,7 +350,7 @@ void func_802D9D60(Actor *this){ func_80328FB0(this, 4.0f); if(func_8028F20C() && func_8028F0D4() && !func_8028EC04()){ if( this->unkF4_8 == 0x12 - && !ability_isUnlocked(D_80367DC4[this->unkF4_8-9].unk5) + && !ability_isUnlocked(D_80367DC4[this->unkF4_8-9].ability) && (func_8028ECAC() == 0 || func_8028ECAC() == BSGROUP_8_TROT) ){ player_getPosition(sp34); diff --git a/src/core2/code_49A70.c b/src/core2/ch/shrapnel.c similarity index 95% rename from src/core2/code_49A70.c rename to src/core2/ch/shrapnel.c index 72b66aed..e20e121a 100644 --- a/src/core2/code_49A70.c +++ b/src/core2/ch/shrapnel.c @@ -13,22 +13,16 @@ void chshrapnel_update(Actor *this); /* .data */ ActorAnimationInfo chShrapnelAnimations[] = { {0, 0.0f}, - {0x1F4, 1.0f}, - {0x1F4, 1.0f}, - {0x92, 0.75f}, - {0x92, 0.75f}, - {0x1F4, 1.0f}, - {0x1F4, 1.0f} + {ASSET_1F4_ANIM_SHRAPNEL_IDLE, 1.0f}, + {ASSET_1F4_ANIM_SHRAPNEL_IDLE, 1.0f}, + {ASSET_92_ANIM_SHRAPNEL_MOVE, 0.75f}, + {ASSET_92_ANIM_SHRAPNEL_MOVE, 0.75f}, + {ASSET_1F4_ANIM_SHRAPNEL_IDLE, 1.0f}, + {ASSET_1F4_ANIM_SHRAPNEL_IDLE, 1.0f} }; -s32 D_803673F8[3] = {0xDE, 0xA7, 0x71}; -ActorInfo chShrapnelDescription = { - MARKER_65_SHRAPNEL, ACTOR_56_SHRAPNEL, ASSET_3EC_MODEL_SHRAPNEL, - 0x1, chShrapnelAnimations, - chshrapnel_update, func_80326224, func_80325888, - 2500, 0x333, 0.0f, 0 -}; + /* .code */ void chShrapnel_func_802D0A00(Actor *this) { @@ -79,6 +73,7 @@ void chShrapnel_emitExplosion(Actor *this) { } void chShrapnel_emitSmoke(Actor *this) { + static s32 D_803673F8[3] = {0xDE, 0xA7, 0x71}; ParticleEmitter *temp_v0; temp_v0 = partEmitMgr_newEmitter(6U); @@ -196,3 +191,9 @@ void chshrapnel_update(Actor *this) { break; } } +ActorInfo chShrapnelDescription = { + MARKER_65_SHRAPNEL, ACTOR_56_SHRAPNEL, ASSET_3EC_MODEL_SHRAPNEL, + 0x1, chShrapnelAnimations, + chshrapnel_update, func_80326224, func_80325888, + 2500, 0x333, 0.0f, 0 +}; diff --git a/src/core2/code_D7040.c b/src/core2/ch/termite.c similarity index 66% rename from src/core2/code_D7040.c rename to src/core2/ch/termite.c index f86f63ca..928fc80d 100644 --- a/src/core2/code_D7040.c +++ b/src/core2/ch/termite.c @@ -3,25 +3,25 @@ #include "variables.h" bool func_8034A6FC(f32, f32); -void func_8035E84C(Actor *this); +void chTermite_update(Actor *this); /* .data */ -ActorAnimationInfo D_80372F10[] ={ +ActorAnimationInfo chTermiteAnimations[] ={ {0, 0.0f}, - {0x5E, 1.2f}, - {0x5F, 0.7f}, - {0x5E, 1.2f}, - {0x5F, 0.7f}, + {ASSET_5E_ANIM_BSANT_IDLE, 1.2f}, + {ASSET_5F_ANIM_BSANT_WALK, 0.7f}, + {ASSET_5E_ANIM_BSANT_IDLE, 1.2f}, + {ASSET_5F_ANIM_BSANT_WALK, 0.7f}, {0, 0.0f}, - {0x256, 0.7f}, + {ASSET_256_ANIM_TERMITE_OW, 0.7f}, }; /* .code */ -void func_8035DFD0(Actor *this) { +void __chTermite_updateRandomSpeed(Actor *this) { this->velocity[0] = randf2(5.0f, 12.0f); } -void func_8035E008(Actor *this) { +void __chTermite_updateAnimationSpeed(Actor *this) { if ((this->velocity[0] - 0.1 <= this->unk28) && (this->unk28 <= this->velocity[0] + 0.1)) { this->unk28 = this->velocity[0]; } else { @@ -30,25 +30,25 @@ void func_8035E008(Actor *this) { animctrl_setDuration(this->animctrl, ml_map_f(this->unk28, 5.0f, 12.0f, 0.54f, 0.36f)); } -void func_8035E0D0(Actor *this) { +void __chTermite_updateRandomRotationSpeed(Actor *this) { this->velocity[1] = ((2*randf() * 3.1) - 3.1); this->velocity[1] += (this->velocity[1] >= 0.0f) ? 3.1 : -3.1; } -void func_8035E150(Actor *this) { +void __chTermite_updateYaw(Actor *this) { s32 temp_f10; s32 phi_v1; temp_f10 = (s32) (this->velocity[1] + this->yaw); - if (temp_f10 >= 0x168) { - this->yaw = (f32) (temp_f10 - 0x168); + if (temp_f10 >= 360) { + this->yaw = (f32) (temp_f10 - 360); return; } - phi_v1 = (temp_f10 < 0) ? temp_f10 + 0x168 : temp_f10; + phi_v1 = (temp_f10 < 0) ? temp_f10 + 360 : temp_f10; this->yaw = (f32) phi_v1; } -void func_8035E1B0(Actor *this) { +void __chTermite_updateWalkSFX(Actor *this) { f32 sp24[3]; f32 sp20; @@ -65,7 +65,7 @@ void func_8035E1B0(Actor *this) { } } -void func_8035E2A8(ParticleEmitter *pCtrl, f32 position[3]){ +void __chTermite_setupParticleEmitter(ParticleEmitter *pCtrl, f32 position[3]){ particleEmitter_setPosition(pCtrl, position); particleEmitter_setDrawMode(pCtrl, 2); func_802EF9F8(pCtrl, 0.7f); @@ -77,68 +77,67 @@ void func_8035E2A8(ParticleEmitter *pCtrl, f32 position[3]){ particleEmitter_setFade(pCtrl, 0.0f, 0.65f); } -void func_8035E360(ParticleEmitter *pCtrl, f32 position[3]){ - func_8035E2A8(pCtrl, position); +void __chTermite_emitLegs(ParticleEmitter *pCtrl, f32 position[3]){ + __chTermite_setupParticleEmitter(pCtrl, position); particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f); - particleEmitter_setModel(pCtrl, 0x393); + particleEmitter_setModel(pCtrl, ASSET_393_MODEL_TERMITE_LEG); func_802EFB70(pCtrl, 0.5f, 0.8f); particleEmitter_setAngularVelocityRange(pCtrl, -800.0f, -800.0f, -800.0f, 800.0f, 800.0f, 800.0f); particleEmitter_setParticleVelocityRange(pCtrl, -200.0f, 850.0f, -200.0f, 400.0f, 1000.0f, 400.0f); particleEmitter_emitN(pCtrl, 6); } -void func_8035E44C(ParticleEmitter *pCtrl, f32 position[3]){ - func_8035E2A8(pCtrl, position); +void __chTermite_emitHead(ParticleEmitter *pCtrl, f32 position[3]){ + __chTermite_setupParticleEmitter(pCtrl, position); particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f); - particleEmitter_setModel(pCtrl, 0x394); + particleEmitter_setModel(pCtrl, ASSET_394_MODEL_TERMITE_HEAD); func_802EFB70(pCtrl, 1.0f, 1.0f); particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f); particleEmitter_setParticleVelocityRange(pCtrl, -50.0f, 750.0f, -50.0f, 120.0f, 900.0f, 120.0f); particleEmitter_emitN(pCtrl, 1); } -void func_8035E540(ParticleEmitter *pCtrl, f32 position[3]){ - func_8035E2A8(pCtrl, position); +void __chTermite_emitBody(ParticleEmitter *pCtrl, f32 position[3]){ + __chTermite_setupParticleEmitter(pCtrl, position); particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1800.0f, 0.0f, 0.0f, -1800.0f, 0.0f); - particleEmitter_setModel(pCtrl, 0x395); + particleEmitter_setModel(pCtrl, ASSET_395_MODEL_TERMITE_BODY); func_802EFB70(pCtrl, 1.0f, 1.0f); particleEmitter_setAngularVelocityRange(pCtrl, -600.0f, -600.0f, -600.0f, 600.0f, 600.0f, 600.0f); particleEmitter_setParticleVelocityRange(pCtrl, -50.0f, 750.0f, -50.0f, 120.0f, 900.0f, 120.0f); particleEmitter_emitN(pCtrl, 1); } -void func_8035E634(ParticleEmitter *pCtrl, f32 position[3]){ - func_8035E2A8(pCtrl, position); +void __chTermite_emitEyes(ParticleEmitter *pCtrl, f32 position[3]){ + __chTermite_setupParticleEmitter(pCtrl, position); particleEmitter_setParticleAccelerationRange(pCtrl, 0.0f, -1400.0f, 0.0f, 0.0f, -1400.0f, 0.0f); - particleEmitter_setModel(pCtrl, 0x396); + particleEmitter_setModel(pCtrl, ASSET_396_MODEL_TERMITE_EYES); func_802EFB70(pCtrl, 1.0f, 1.0f); particleEmitter_setAngularVelocityRange(pCtrl, -300.0f, -300.0f, -300.0f, 300.0f, 300.0f, 300.0f); particleEmitter_setParticleVelocityRange(pCtrl, -80.0f, 400.0f, -80.0f, 160.0f, 860.0f, 160.0f); particleEmitter_emitN(pCtrl, 2); } - -void func_8035E724(ActorMarker *marker, ActorMarker *other_marker){ +void __chTermite_ow(ActorMarker *marker, ActorMarker *other_marker){ Actor *this; this = marker_getActor(marker); func_80328AC8(this, 6); } -void func_8035E750(ActorMarker *marker, ActorMarker *other_marker){ +void __chTermite_die(ActorMarker *marker, ActorMarker *other_marker){ Actor *this; this = marker_getActor(marker); - func_8035E360(partEmitMgr_newEmitter(6), this->position); - func_8035E44C(partEmitMgr_newEmitter(1), this->position); - func_8035E540(partEmitMgr_newEmitter(1), this->position); - func_8035E634(partEmitMgr_newEmitter(2), this->position); + __chTermite_emitLegs(partEmitMgr_newEmitter(6), this->position); + __chTermite_emitHead(partEmitMgr_newEmitter(1), this->position); + __chTermite_emitBody(partEmitMgr_newEmitter(1), this->position); + __chTermite_emitEyes(partEmitMgr_newEmitter(2), this->position); marker->collidable = FALSE; this->unk138_27 = 1; FUNC_8030E624(SFX_D1_SNORKEL_WAH, 1.4f, 32750); marker_despawn(marker); } -void func_8035E810(ActorMarker *caller, enum asset_e text_id, s32 arg2){ +void __chTermite_testCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2){ Actor *this; this = marker_getActor(caller); @@ -146,14 +145,14 @@ void func_8035E810(ActorMarker *caller, enum asset_e text_id, s32 arg2){ levelSpecificFlags_set(0xd, FALSE); } -void func_8035E84C(Actor *this) { +void chTermite_update(Actor *this) { s32 sp34; static s32 D_80372F48 = 0; static s32 D_80372F4C = 0; sp34 = func_8023DB5C(); if (!this->unk16C_4) { - marker_setCollisionScripts(this->marker, NULL, func_8035E724, func_8035E750); + marker_setCollisionScripts(this->marker, NULL, __chTermite_ow, __chTermite_die); this->unk124_0 = this->unk138_31 = FALSE; this->unk138_24 = FALSE; this->unk16C_0 = TRUE; @@ -166,7 +165,7 @@ void func_8035E84C(Actor *this) { && func_8028ECAC() == 0 && player_getTransformation() == TRANSFORM_1_BANJO ) { - func_80311480(0xB43, 7, this->position, this->marker, func_8035E810, NULL); + func_80311480(ASSET_B43_DIALOG_TERMITE_MEET_AS_BEAR, 7, this->position, this->marker, __chTermite_testCallback, NULL); mapSpecificFlags_set(0, TRUE); levelSpecificFlags_set(0xD, TRUE); this->unk138_24 = TRUE; @@ -178,19 +177,19 @@ void func_8035E84C(Actor *this) { && player_getTransformation() == TRANSFORM_2_TERMITE ) { if (!levelSpecificFlags_get(0xB)) { - if (func_80311480(0xB41, 0, NULL, NULL, NULL, NULL)) { + if (func_80311480(ASSET_B41_DIALOG_TERMITE_COOL_SHORTS, 0, NULL, NULL, NULL, NULL)) { levelSpecificFlags_set(0xB, TRUE); this->unk138_23 = TRUE; } - } else if (!levelSpecificFlags_get(0xC) && !this->unk138_23 && (func_80311480(0xB42, 0, NULL, NULL, NULL, NULL))) { + } else if (!levelSpecificFlags_get(0xC) && !this->unk138_23 && (func_80311480(ASSET_B42_DIALOG_TERMITE_COOL_BACKPACK, 0, NULL, NULL, NULL, NULL))) { levelSpecificFlags_set(0xC, TRUE); } } switch (this->state) { case 1: if (func_80328BD4(this, 2, 0.0f, 1, 0.06f)) { - func_8035E0D0(this); - func_8035DFD0(this); + __chTermite_updateRandomRotationSpeed(this); + __chTermite_updateRandomSpeed(this); this->unk28 = 0.0f; return; } @@ -199,17 +198,17 @@ void func_8035E84C(Actor *this) { if (sp34 != D_80372F48) { D_80372F48 = sp34; D_80372F4C = 1; - func_8035E1B0(this); + __chTermite_updateWalkSFX(this); } else if (D_80372F4C != 0) { D_80372F4C--; - func_8035E1B0(this); + __chTermite_updateWalkSFX(this); } if (this->unk38_31 != 0) { this->unk38_31--; } else { - func_8035E150(this); + __chTermite_updateYaw(this); if ((sp34 & 0x1F) == 0xE && 0.45 < randf()) { - func_8035E0D0(this); + __chTermite_updateRandomRotationSpeed(this); } if (func_8034A6FC(0.73f, 0.76f) && func_80329078(this, (s32) this->yaw, 750) ) { this->yaw_ideal = this->yaw; @@ -218,10 +217,10 @@ void func_8035E84C(Actor *this) { this->unk38_31 = 0x3A; } if ((sp34 & 0x1F) == 3 && 0.58 < (f64) randf()) { - func_8035DFD0(this); + __chTermite_updateRandomSpeed(this); } } - func_8035E008(this); + __chTermite_updateAnimationSpeed(this); func_80329030(this, 0); func_80328BD4(this, 1, 0.0f, 1, 0.047f); return; @@ -234,10 +233,10 @@ void func_8035E84C(Actor *this) { } // this data struct is at the end of the file so the local static vars -// in func_8035E84C are in correct .data location -ActorInfo D_80372F50 = { - 0x4, 0x5, 0x350, - 0x1, D_80372F10, - func_8035E84C, func_80326224, func_80325888, +// in chTermite_update are in correct .data location +ActorInfo chTermite = { + MARKER_4_TERMITE, ACTOR_5_TERMITE, ASSET_350_MODEL_TERMITE, + 0x1, chTermiteAnimations, + chTermite_update, func_80326224, func_80325888, 2000, 0, 0.0f, 0 }; diff --git a/src/core2/ch/trainers.c b/src/core2/ch/trainers.c index f4a0a1be..7482223e 100644 --- a/src/core2/ch/trainers.c +++ b/src/core2/ch/trainers.c @@ -2,20 +2,23 @@ #include "functions.h" #include "variables.h" +#include "core2/statetimer.h" +extern f32 player_stateTimer_get(enum state_timer_e); + Actor *chtrainers_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); void chtrainers_update(Actor *this); /* .data */ -ActorAnimationInfo D_80366EA0[] = { +ActorAnimationInfo chTrainersAnimations[] = { {ASSET_D6_ANIM_TURBO_TALON_TRAINERS, 1.5f}, {ASSET_D6_ANIM_TURBO_TALON_TRAINERS, 1.5f}, {ASSET_D6_ANIM_TURBO_TALON_TRAINERS, 1.5f}, {ASSET_D6_ANIM_TURBO_TALON_TRAINERS, 1.5f} }; -ActorInfo D_80366EC0 = { +ActorInfo chTrainers = { MARKER_38_TURBO_TALON_TRAINERS, ACTOR_2C_TURBO_TALON_TRAINERS, ASSET_367_MODEL_TURBO_TALON_TRAINERS, - 0x0, D_80366EA0, + 0x0, chTrainersAnimations, chtrainers_update, func_80326224, chtrainers_draw, 0, 0, 0.0f, 0 }; @@ -94,7 +97,7 @@ void chtrainers_update(Actor *this){ break; case 2://L802CA670 - if(func_8028E80C(3) == 0.0f){ + if(player_stateTimer_get(STATE_TIMER_3_TURBO_TALON) == 0.0f){ this->velocity[2] = 1.0f; func_80328A84(this, 3); } diff --git a/src/core2/ch/wadingboots.c b/src/core2/ch/wadingboots.c index eb30b672..7743442d 100644 --- a/src/core2/ch/wadingboots.c +++ b/src/core2/ch/wadingboots.c @@ -2,15 +2,18 @@ #include "functions.h" #include "variables.h" +#include "core2/statetimer.h" +extern f32 player_stateTimer_get(enum state_timer_e); + Actor *chwadingboots_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx); void chwadingboots_update(Actor *this); /* .data */ ActorAnimationInfo D_80367A00[] = { - {0x67, 0.7f}, - {0x67, 0.7f}, - {0x67, 0.7f}, - {0x67, 0.7f}, + {ASSET_67_ANIM_WADINGBOOTS_WALK, 0.7f}, + {ASSET_67_ANIM_WADINGBOOTS_WALK, 0.7f}, + {ASSET_67_ANIM_WADINGBOOTS_WALK, 0.7f}, + {ASSET_67_ANIM_WADINGBOOTS_WALK, 0.7f}, }; ActorInfo D_80367A20 = { @@ -63,10 +66,10 @@ void chwadingboots_update(Actor *this){ } if(func_803203FC(0x10)) break; - if(!func_80329530(this, 0xfa)) break; + if(!func_80329530(this, 250)) break; if(player_getTransformation() != TRANSFORM_1_BANJO) break; - if(func_80311480(0xda5, 0, NULL, NULL, NULL, NULL)){ + if(func_80311480(ASSET_DA5_DIALOG_WADINGBOOTS_MEET, 0, NULL, NULL, NULL, NULL)){ func_803204E4(0x10, TRUE); } @@ -80,7 +83,7 @@ void chwadingboots_update(Actor *this){ break; case 2://L802D6D74 - if(func_8028E80C(2) == 0.0f){ + if(player_stateTimer_get(STATE_TIMER_2_LONGLEG) == 0.0f){ this->velocity[1] = 1.5f; func_80328A84(this, 3); } diff --git a/src/core2/code_10CD0.c b/src/core2/code_10CD0.c index 733b6bf1..966dad67 100644 --- a/src/core2/code_10CD0.c +++ b/src/core2/code_10CD0.c @@ -1,6 +1,7 @@ #include #include "functions.h" #include "variables.h" +#include "core2/statetimer.h" /* .bss */ u8 D_8037C530; @@ -17,20 +18,20 @@ s32 func_80297C6C(void){ void func_80297C78(void){ D_8037C530 = 0; func_80297C60(1); - func_802917C4(4); + stateTimer_clear(STATE_TIMER_4_UNKNOWN); } void func_80297CA8(void){ func_80297CCC(0.6f); } -void func_80297CCC(f32 arg0){ - func_802917E4(4, arg0); +void func_80297CCC(f32 value){ + stateTimer_set(STATE_TIMER_4_UNKNOWN, value); func_80297C60(3); } void func_80297CF8(void){ - if(func_802916CC(4)){ + if(stateTimer_isDone(STATE_TIMER_4_UNKNOWN)){ func_80297C60(1); } } diff --git a/src/core2/code_11660.c b/src/core2/code_11660.c index 59e17661..1cea69ca 100644 --- a/src/core2/code_11660.c +++ b/src/core2/code_11660.c @@ -7,7 +7,7 @@ void *D_8037C5D0; /* .code */ s32 func_802985F0(void){ - switch(_player_getTransformation()) + switch(bsStoredState_getTransformation()) { case TRANSFORM_2_TERMITE: //80298624 return ASSET_34F_MODEL_BANJO_TERMITE; @@ -41,7 +41,7 @@ s32 func_802985F0(void){ case MAP_88_CS_SPIRAL_MOUNTAIN_6: case MAP_89_CS_INTRO_BANJOS_HOUSE_2: case MAP_8A_CS_INTRO_BANJOS_HOUSE_3: - return 0x34d; + return ASSET_34D_MODEL_BANJOKAZOOIE_LOW_POLY; case MAP_1_SM_SPIRAL_MOUNTAIN: case MAP_2_MM_MUMBOS_MOUNTAIN: @@ -58,10 +58,10 @@ s32 func_802985F0(void){ case MAP_45_CCW_AUTUMN: case MAP_46_CCW_WINTER: case 0x56: - return 0x34d; + return ASSET_34D_MODEL_BANJOKAZOOIE_LOW_POLY; default: - return 0x34e; + return ASSET_34E_MODEL_BANJOKAZOOIE_HIGH_POLY; } } } diff --git a/src/core2/code_13900.c b/src/core2/code_13900.c deleted file mode 100644 index 1512f603..00000000 --- a/src/core2/code_13900.c +++ /dev/null @@ -1,61 +0,0 @@ -#include -#include "functions.h" -#include "variables.h" - -struct { - f32 unk0; - f32 unk4; - u8 xform_8; -} D_8037D180; -u8 D_8037D18C; - -/* .code */ -void func_8029A890(void){ - func_802957FC(); -} - -void func_8029A8B0(void){ - func_80295804(); - D_8037D180.unk0 = D_8037D180.unk4 = 0.0f; - D_8037D180.xform_8 = TRANSFORM_1_BANJO; - D_8037D18C = FALSE; -} - -enum transformation_e _player_getTransformation(void){ - return D_8037D180.xform_8; -} - -f32 func_8029A900(void){ - return D_8037D180.unk0; -} - -f32 func_8029A90C(void){ - return D_8037D180.unk4; -} - -s32 func_8029A918(void){ - return D_8037D18C; -} - -void func_8029A924(void){} - -void func_8029A92C(void){ - func_8029A968(0.0f); - func_8029A974(0.0f); -} - -void player_setTransformation(enum transformation_e xform_id){ - D_8037D180.xform_8 = xform_id; -} - -void func_8029A968(f32 arg0){ - D_8037D180.unk0 = arg0; -} - -void func_8029A974(f32 arg0){ - D_8037D180.unk4 = arg0; -} - -void func_8029A980(s32 arg0){ - D_8037D18C = arg0; -} diff --git a/src/core2/code_14420.c b/src/core2/code_14420.c index d1ca82cc..7df2363a 100644 --- a/src/core2/code_14420.c +++ b/src/core2/code_14420.c @@ -2,6 +2,7 @@ #include "functions.h" #include "variables.h" #include "core2/yaw.h" +#include "core2/statetimer.h" f32 func_8024DDD8(f32[3], f32); extern void func_8024E71C(s32, f32*); @@ -30,8 +31,8 @@ enum bs_14420_e{ BS14420_7_FLY = 0x7, BS14420_8_TROT, - - BS14420_A_WALRUS_SLED = 0xA, + BS14420_9_LONGLEG, + BS14420_A_WALRUS_SLED, BS14420_B_BEE, BS14420_C_CLIMB, BS14420_D_WONDERWING, @@ -62,16 +63,16 @@ Struct_core2_13FC0 D_80364650[14] = { {BS_93_PUMPKIN_DRONE, ASSET_A0_ANIM_BSPUMPKIN_WALK, 0.4f}, {BS_94_CROC_DRONE, ASSET_E0_ANIM_BSCROC_WALK, 0.6f}, {BS_95_WALRUS_DRONE, ASSET_120_ANIM_BSWALRUS_WALK, 0.7f}, - {BS_96_SWIM_LOCKED, ASSET_39_ANIM_BSSWIM_SWIM, 0.8f}, - {BS_97_DIVE_LOCKED, ASSET_71_ANIM_BANJO_BSDIVE_SWIM_SLOW, 0.75f}, + {BS_96_SWIM_LOCKED, ASSET_39_ANIM_BSSWIM_MOVE, 0.8f}, + {BS_97_DIVE_LOCKED, ASSET_71_ANIM_BSSWIM_DIVE_SLOW, 0.75f}, {BS_98_WALK_DRONE, ASSET_3_ANIM_BSWALK, 0.43f}, - {BS_99_BFLY_DRONE, ASSET_38_BANJO_FLY, 0.62f}, - {BS_9A_BTROT_DRONE, ANIM_15_ANIM_BTROT_WALK, 0.53f}, + {BS_99_BFLY_DRONE, ASSET_38_ANIM_BSBFLY, 0.62f}, + {BS_9A_BTROT_DRONE, ASSET_15_ANIM_BSBTROT_WALK, 0.53f}, {BS_9B_LONGLEG_DRONE, ASSET_42_ANIM_BSLONGLEG_WALK, 0.8f}, {BS_9C_WALRUS_SLED_DRONE, ASSET_19E_ANIM_BSWALRUS_SLED, 0.8f}, {BS_9D_BEE_DRONE, ASSET_1DC_ANIM_BEE_FLY, 0.38f}, {BS_98_WALK_DRONE, ASSET_3_ANIM_BSWALK, 0.43f}, - {BS_A4_WONDERWING_DRONE, ASSET_11_ANIM_BSWONDERWING_WALK, 0.53f} + {BS_A4_WONDERWING_DRONE, ASSET_11_ANIM_BSWHIRL_WALK, 0.53f} }; Struct_core2_13FC0 D_803646C0[14] = { @@ -80,10 +81,10 @@ Struct_core2_13FC0 D_803646C0[14] = { {BS_94_CROC_DRONE, ASSET_E1_ANIM_BSCROC_IDLE, 1.0f}, {BS_95_WALRUS_DRONE, ASSET_11F_ANIM_BSWALRUS_IDLE, 4.0f}, {BS_96_SWIM_LOCKED, ASSET_57_ANIM_BSSWIM_IDLE, 1.2f}, - {BS_97_DIVE_LOCKED, ASSET_70_ANIM_BANJO_DIVE_IDLE, 2.0f}, + {BS_97_DIVE_LOCKED, ASSET_70_ANIM_BSSWIM_DIVE_IDLE, 2.0f}, {BS_98_WALK_DRONE, ASSET_19B_ANIM_UNKNOWN, 4.5f}, - {BS_99_BFLY_DRONE, ASSET_38_BANJO_FLY, 0.62f}, - {BS_9A_BTROT_DRONE, ASSET_26_ANIM_BTROT_IDLE, 1.2f}, + {BS_99_BFLY_DRONE, ASSET_38_ANIM_BSBFLY, 0.62f}, + {BS_9A_BTROT_DRONE, ASSET_26_ANIM_BSBTROT_IDLE, 1.2f}, {BS_9B_LONGLEG_DRONE, ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f}, {BS_9C_WALRUS_SLED_DRONE, ASSET_19E_ANIM_BSWALRUS_SLED, 0.8f}, {BS_9D_BEE_DRONE, ASSET_1DE_ANIM_BEE_IDLE, 3.0f}, @@ -97,10 +98,10 @@ Struct_core2_13FC0 D_80364730[14] = { {BS_94_CROC_DRONE, ASSET_E1_ANIM_BSCROC_IDLE, 1.0f}, {BS_95_WALRUS_DRONE, ASSET_11F_ANIM_BSWALRUS_IDLE, 4.0f}, {BS_96_SWIM_LOCKED, ASSET_57_ANIM_BSSWIM_IDLE, 1.2f}, - {BS_97_DIVE_LOCKED, ASSET_70_ANIM_BANJO_DIVE_IDLE, 2.0f}, + {BS_97_DIVE_LOCKED, ASSET_70_ANIM_BSSWIM_DIVE_IDLE, 2.0f}, {BS_98_WALK_DRONE, ASSET_19B_ANIM_UNKNOWN, 4.5f}, - {BS_99_BFLY_DRONE, ASSET_38_BANJO_FLY, 0.62f}, - {BS_9A_BTROT_DRONE, ASSET_26_ANIM_BTROT_IDLE, 1.2f}, + {BS_99_BFLY_DRONE, ASSET_38_ANIM_BSBFLY, 0.62f}, + {BS_9A_BTROT_DRONE, ASSET_26_ANIM_BSBTROT_IDLE, 1.2f}, {BS_9B_LONGLEG_DRONE, ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f}, {BS_9C_WALRUS_SLED_DRONE, ASSET_19E_ANIM_BSWALRUS_SLED, 0.8f}, {BS_9D_BEE_DRONE, ASSET_1DE_ANIM_BEE_IDLE, 3.0f}, @@ -114,10 +115,10 @@ Struct_core2_13FC0 D_803647A0[14] = { {BS_94_CROC_DRONE, ASSET_E1_ANIM_BSCROC_IDLE, 1.0f}, {BS_95_WALRUS_DRONE, ASSET_11F_ANIM_BSWALRUS_IDLE, 4.0f}, {BS_96_SWIM_LOCKED, ASSET_57_ANIM_BSSWIM_IDLE, 1.2f}, - {BS_97_DIVE_LOCKED, ASSET_70_ANIM_BANJO_DIVE_IDLE, 2.0f}, + {BS_97_DIVE_LOCKED, ASSET_70_ANIM_BSSWIM_DIVE_IDLE, 2.0f}, {BS_98_WALK_DRONE, ASSET_6F_ANIM_BSSTAND_IDLE, 5.5f}, - {BS_99_BFLY_DRONE, ASSET_38_BANJO_FLY, 0.62f}, - {BS_9A_BTROT_DRONE, ASSET_26_ANIM_BTROT_IDLE, 1.2f}, + {BS_99_BFLY_DRONE, ASSET_38_ANIM_BSBFLY, 0.62f}, + {BS_9A_BTROT_DRONE, ASSET_26_ANIM_BSBTROT_IDLE, 1.2f}, {BS_9B_LONGLEG_DRONE, ASSET_41_ANIM_BSLONGLEG_IDLE, 1.0f}, {BS_9C_WALRUS_SLED_DRONE, ASSET_19E_ANIM_BSWALRUS_SLED, 0.8f}, {BS_9D_BEE_DRONE, ASSET_1DE_ANIM_BEE_IDLE, 3.0f}, @@ -209,7 +210,7 @@ enum bs_e func_8029B458(void){ enum bs_e sp1C; sp1C = bs_getState(); - switch(_player_getTransformation()){ + switch(bsStoredState_getTransformation()){ case TRANSFORM_2_TERMITE: return BS_38_ANT_FALL; @@ -386,7 +387,7 @@ f32 func_8029BA44(void){ } enum bs_e func_8029BA80(void){ - switch (_player_getTransformation()) + switch (bsStoredState_getTransformation()) { case TRANSFORM_3_PUMPKIN: return BS_4B_PUMPKIN_FALL; @@ -411,7 +412,7 @@ enum bs_e func_8029BA80(void){ enum bs_14420_e func_8029BAF0(void){ enum bs_e state_id = bs_getState(); - switch (_player_getTransformation()) + switch (bsStoredState_getTransformation()) { case TRANSFORM_3_PUMPKIN://L8029BB2C return BS14420_1_PUMPKIN; @@ -442,8 +443,8 @@ enum bs_14420_e func_8029BAF0(void){ if (bsbtrot_inSet(state_id)) { return BS14420_8_TROT; } - if (func_80291670(2) != 0.0f) { - return 9; + if (stateTimer_get(STATE_TIMER_2_LONGLEG) != 0.0f) { + return BS14420_9_LONGLEG; } if (miscflag_isTrue(0x18)) { return BS14420_5_UNDERWATER; @@ -547,7 +548,7 @@ enum bs_e func_8029BF4C(void) { } enum bs_e bs_getIdleState(void){ - switch (_player_getTransformation()) { + switch (bsStoredState_getTransformation()) { case TRANSFORM_3_PUMPKIN: return BS_48_PUMPKIN_IDLE; @@ -571,10 +572,10 @@ enum bs_e bs_getIdleState(void){ if (miscflag_isTrue(0x18)) { return BS_2B_DIVE_IDLE; } - if (func_80291670(3) != 0.0f) { + if (stateTimer_get(STATE_TIMER_3_TURBO_TALON) != 0.0f) { return BS_15_BTROT_IDLE; } - if (func_80291670(2) != 0.0f) { + if (stateTimer_get(STATE_TIMER_2_LONGLEG) != 0.0f) { return BS_26_LONGLEG_IDLE; } if (player_inWater()) { @@ -583,7 +584,7 @@ enum bs_e bs_getIdleState(void){ } return BS_2B_DIVE_IDLE; } - if (func_8029A918()) { + if (bsStoredState_getTrotFlag()) { return BS_15_BTROT_IDLE; } return BS_1_IDLE; @@ -775,7 +776,7 @@ void func_8029C834(enum map_e map_id, s32 exit_id){ } void func_8029C848(AnimCtrl *arg0) { - switch(_player_getTransformation()) { + switch(bsStoredState_getTransformation()) { case TRANSFORM_2_TERMITE: //L8029C880 animctrl_setIndex(arg0, ASSET_5E_ANIM_BSANT_IDLE); animctrl_setDuration(arg0, 2.0f); diff --git a/src/core2/code_16010.c b/src/core2/code_16010.c index 19cb7e32..6f7185fb 100644 --- a/src/core2/code_16010.c +++ b/src/core2/code_16010.c @@ -2,6 +2,8 @@ #include "functions.h" #include "variables.h" +#include "core2/statetimer.h" + extern int func_80258424(f32 vec[3], f32 minX, f32 minY, f32 minZ, f32 maxX, f32 maxY, f32 maxZ); /* .bss */ @@ -220,8 +222,8 @@ bool func_8029D7B4(void){ case MAP_7F_FP_WOZZAS_CAVE://L8029D84C case MAP_8E_GL_FURNACE_FUN://L8029D84C return func_8029D66C() - && _player_getTransformation() == TRANSFORM_1_BANJO - && func_802916CC(2) + && bsStoredState_getTransformation() == TRANSFORM_1_BANJO + && stateTimer_isDone(STATE_TIMER_2_LONGLEG) && func_8028ECAC() != BSGROUP_3_WONDERWING && func_8028ECAC() != BSGROUP_9_LONG_LEG && miscflag_isFalse(MISC_FLAG_E_TOUCHING_WADING_BOOTS) diff --git a/src/core2/code_16C60.c b/src/core2/code_16C60.c index c845fa59..118b49b6 100644 --- a/src/core2/code_16C60.c +++ b/src/core2/code_16C60.c @@ -27,8 +27,8 @@ f32 D_8037D240; void func_8029DBF0(void){ s32 temp_s0; switch(baModel_getModelId()){ - case 0x34D: //L8029DC24 - case 0x34E: //L8029DC24 + case ASSET_34D_MODEL_BANJOKAZOOIE_LOW_POLY: //L8029DC24 + case ASSET_34E_MODEL_BANJOKAZOOIE_HIGH_POLY: //L8029DC24 temp_s0 = (s32) ml_interpolate_f(D_8037D23C, 1.0f, 8.0f); func_8033A45C(0x1B, temp_s0); func_8033A45C(0x1D, temp_s0); @@ -62,8 +62,8 @@ void func_8029DD6C(void) { func_8033A1FC(); switch (baModel_getModelId()) { - case 0x34D: - case 0x34E: + case ASSET_34D_MODEL_BANJOKAZOOIE_LOW_POLY: + case ASSET_34E_MODEL_BANJOKAZOOIE_HIGH_POLY: func_8033A45C(1, D_8037D238); func_8033A45C(9, D_8037D238); func_8033A45C(0xC, D_8037D238); diff --git a/src/core2/code_39D0.c b/src/core2/code_39D0.c index 2c482093..4ad80a64 100644 --- a/src/core2/code_39D0.c +++ b/src/core2/code_39D0.c @@ -3,6 +3,7 @@ #include "variables.h" #include "prop.h" +#include "core2/statetimer.h" extern f32 func_8024DDD8(f32[3], f32); extern int func_80259254(f32 vec[3], f32 x, f32 z, f32 val); @@ -197,7 +198,7 @@ bool player_isInVerticalRange(f32 position[3], f32 range) { } int player_shouldSlideTrot(void){ - return func_80291698(6) + return stateTimer_isActive(STATE_TIMER_6_UNKNOWN) || (1.0 == get_slope_timer() && func_80294610(0x40)); } @@ -210,7 +211,7 @@ int func_8028B2E8(void){ } int player_isSliding(void){ - return func_80291698(5) + return stateTimer_isActive(STATE_TIMER_5_UNKNOWN) || 1.0 == get_slope_timer(); } diff --git a/src/core2/code_4A6F0.c b/src/core2/code_4A6F0.c index 48876497..6f455311 100644 --- a/src/core2/code_4A6F0.c +++ b/src/core2/code_4A6F0.c @@ -14,19 +14,19 @@ void chMumbo_update(Actor *this); /* .data */ ActorAnimationInfo D_80367490[] = { {0, 0.0f}, - {0x6A, 2.6f}, - {0x6B, 1.33f}, - {0x6C, 6.67f}, - {0x6C, 6.67f}, - {0x6D, 7.5f}, - {0x6E, 0.67f}, - {0x16E, 8.0f}, - {0x17F, 2.0f}, - {0x180, 0.7f}, + {ASSET_6A_ANIM_MUMBO_SLEEP, 2.6f}, + {ASSET_6B_ANIM_MUMBO_WAKEUP, 1.33f}, + {ASSET_6C_ANIM_MUMBO_IDLE, 6.67f}, + {ASSET_6C_ANIM_MUMBO_IDLE, 6.67f}, + {ASSET_6D_ANIM_MUMBO_TRANSFORM, 7.5f}, + {ASSET_6E_ANIM_MUMBO_UNKNOWN, 0.67f}, + {ASSET_16E_ANIM_MUMBO_RECLINE, 8.0f}, + {ASSET_17F_ANIM_MUMBO_SWEEP, 2.0f}, + {ASSET_180_ANIM_MUMBO_ROTATE, 0.7f}, }; ActorInfo D_803674E0 = { - 0x6, 0x7, 0x3C6, + MARKER_6_MUMBO, ACTOR_7_MUMBO, ASSET_3C6_MODEL_MUMBO, 0x1, D_80367490, chMumbo_update, func_80326224, chMumbo_draw, 0, 0, 0.0f, 0 @@ -143,23 +143,23 @@ static void __chMumbo_textCallback(ActorMarker *caller, enum asset_e text_id, s3 this = marker_getActor(caller); switch(text_id){ - case 0xD8F: //L802D1A04 - func_80311480((this->unk38_0) ? 0xDAA : 0xDAB, 0xe, this->position, this->marker, __chMumbo_textCallback, NULL); + case ASSET_D8F_DIALOG_MUMBO_MEET: //L802D1A04 + func_80311480((this->unk38_0) ? ASSET_DAA_DIALOG_MUMBO_HAS_ENOUGH_TOKENS : ASSET_DAB_DIALOG_MUMBO_NOT_ENOUGH_TOKENS, 0xe, this->position, this->marker, __chMumbo_textCallback, NULL); return; - case 0xd90: //L802D1A40 + case ASSET_D90_DIALOG_MUMBO_MAGIC_PAID_FOR: //L802D1A40 func_80320004(BKPROG_12_HAS_TRANSFORMED_BEFORE, TRUE); - func_80311480(0xD8F + D_8037DDF0, 4, NULL, NULL, NULL, NULL); + func_80311480(ASSET_D8F_DIALOG_MUMBO_MEET + D_8037DDF0, 4, NULL, NULL, NULL, NULL); gcpausemenu_80314AC8(1); break; - case 0xdaa: //L802D1A7C /* fall-through */ + case ASSET_DAA_DIALOG_MUMBO_HAS_ENOUGH_TOKENS: //L802D1A7C /* fall-through */ func_80320004(BKPROG_DC_HAS_HAD_ENOUGH_TOKENS_BEFORE, TRUE); - case 0xdab: //L802D1A88 + case ASSET_DAB_DIALOG_MUMBO_NOT_ENOUGH_TOKENS: //L802D1A88 func_8028F918(0); break; - case 0xdaf: //L802D1A98 + case ASSET_DAF_DIALOG_MUMBO_TREX_MISTAKE: //L802D1A98 this->unk138_24 = FALSE; if(this->unk38_31 != 0){ func_8025A6EC(COMUSIC_2B_DING_B, 28000); @@ -169,9 +169,9 @@ static void __chMumbo_textCallback(ActorMarker *caller, enum asset_e text_id, s3 func_80328B8C(this, 5, 0.0f, 1); return; - case 0xdb0: //L802D1AF8 - case 0xdb1: //L802D1AF8 - case 0xdb2: //L802D1AF8 + case ASSET_DB0_DIALOG_MUMBO_MISTAKE_0: //L802D1AF8 + case ASSET_DB1_DIALOG_MUMBO_MISTAKE_1: //L802D1AF8 + case ASSET_DB2_DIALOG_MUMBO_MISTAKE_2: //L802D1AF8 D_8037DDF0 = this->unk10_12; this->unk10_12 = 1; if(this->unk38_31){ @@ -179,7 +179,7 @@ static void __chMumbo_textCallback(ActorMarker *caller, enum asset_e text_id, s3 func_803463D4(ITEM_1C_MUMBO_TOKEN, -this->unk38_31); } - case 0xdae: //L802D1B48 + case ASSET_DAE_DIALOG_MUMBO_TREX_START: //L802D1B48 func_80328B8C(this, 5, 0.0f, 1); return; @@ -192,16 +192,16 @@ static void __chMumbo_textCallback(ActorMarker *caller, enum asset_e text_id, s3 void chMumbo_func_802D1B8C(Actor *this, enum transformation_e transform_id) { if (this->unk10_12 != 0) { - func_80311480(func_8031FF44(BK_PROG_BB_MUMBO_MISTAKE_INDEX, 2) + 0xDAF, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL); + func_80311480(func_8031FF44(BK_PROG_BB_MUMBO_MISTAKE_INDEX, 2) + ASSET_DAF_DIALOG_MUMBO_TREX_MISTAKE, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL); return; } if (func_8031FF1C(BKPROG_12_HAS_TRANSFORMED_BEFORE)) { if (this->velocity[0] == 0.0f) { - func_80311480(transform_id + 0xD8F, 6, this->position, this->marker, __chMumbo_textCallback, NULL); + func_80311480(transform_id + ASSET_D8F_DIALOG_MUMBO_MEET, 6, this->position, this->marker, __chMumbo_textCallback, NULL); return; } if (map_get() == MAP_7A_GL_CRYPT && transform_id == TRANSFORM_3_PUMPKIN && !func_8031FF1C(BKPROG_F7_HAS_TRANSFORMED_IN_CRYPT)) { - func_80311480(0xDAD, 6, this->position, this->marker, __chMumbo_textCallback, NULL); + func_80311480(ASSET_DAD_DIALOG_MUMBO_XFORM_IN_CRYPT, 6, this->position, this->marker, __chMumbo_textCallback, NULL); func_80320004(BKPROG_F7_HAS_TRANSFORMED_IN_CRYPT, TRUE); return; } @@ -209,7 +209,7 @@ void chMumbo_func_802D1B8C(Actor *this, enum transformation_e transform_id) { func_80328A84(this, 4U); return; } - func_80311480(0xD90, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL); + func_80311480(ASSET_D90_DIALOG_MUMBO_MAGIC_PAID_FOR, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL); } void chMumbo_update(Actor *this) { @@ -282,7 +282,7 @@ void chMumbo_update(Actor *this) { && !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE) ) { func_80328A84(this, 3); - func_80311480(0xD8F, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL); + func_80311480(ASSET_D8F_DIALOG_MUMBO_MEET, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL); func_80320004(BKPROG_11_HAS_MET_MUMBO, TRUE); break; } @@ -293,7 +293,7 @@ void chMumbo_update(Actor *this) { && this->unk38_0 ){ func_80328A84(this, 3); - func_80311480(0xDAA, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL); + func_80311480(ASSET_DAA_DIALOG_MUMBO_HAS_ENOUGH_TOKENS, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL); func_80320004(BKPROG_DC_HAS_HAD_ENOUGH_TOKENS_BEFORE, TRUE); break; } @@ -331,7 +331,7 @@ void chMumbo_update(Actor *this) { && randf() < 0.01 && sp48 ) { - func_80311480(0xDAE, 6, NULL, this->marker, __chMumbo_textCallback, NULL); + func_80311480(ASSET_DAE_DIALOG_MUMBO_TREX_START, 6, NULL, this->marker, __chMumbo_textCallback, NULL); func_80320004(0xBA, 1); this->unk138_24 = TRUE; func_80328A84(this, 3); @@ -360,7 +360,7 @@ void chMumbo_update(Actor *this) { break; } func_8025A6EC(COMUSIC_2C_BUZZER, 22000); - if ((levelSpecificFlags_get(0x3E) == 0) && (func_80311480(0xDAC, 0, NULL, NULL, NULL, NULL) != 0)) { + if ((levelSpecificFlags_get(0x3E) == 0) && (func_80311480(ASSET_DAC_DIALOG_MUMBO_FAIL_TO_BUY, 0, NULL, NULL, NULL, NULL) != 0)) { levelSpecificFlags_set(0x3E, 1); } } @@ -381,7 +381,7 @@ void chMumbo_update(Actor *this) { } if (actor_animationIsAt(this, 0.01f)) { func_8025A70C(COMUSIC_1D_MUMBO_TRANSFORMATION); - func_8025A58C(0, 0x3E8); + func_8025A58C(0, 1000); } if (actor_animationIsAt(this, 0.01f)) { @@ -404,7 +404,7 @@ void chMumbo_update(Actor *this) { } } if (actor_animationIsAt(this, 0.79f)) { - func_8025A58C(-1, 0x3E8); + func_8025A58C(-1, 1000); } if (actor_animationIsAt(this, 0.999f)) { if (!this->unk138_24) { @@ -418,7 +418,7 @@ void chMumbo_update(Actor *this) { } if (this->unk138_24) { func_80328A84(this, 3); - func_80311480(0xDAF, 6, NULL, this->marker, __chMumbo_textCallback, NULL); + func_80311480(ASSET_DAF_DIALOG_MUMBO_TREX_MISTAKE, 6, NULL, this->marker, __chMumbo_textCallback, NULL); break; } gcpausemenu_80314AC8(1); @@ -435,7 +435,7 @@ void chMumbo_update(Actor *this) { sp48 = chMumbo_withinHorzDistToPlayer(0, -0x6B, 0xBC); } if (sp48 != 0) { - func_80311480(0xDA7, 7, NULL, NULL, NULL, NULL); + func_80311480(ASSET_DA7_DIALOG_MUMBO_CCW_SUMMER, 7, NULL, NULL, NULL, NULL); func_803204E4(BKPROG_11_HAS_MET_MUMBO, TRUE); } } @@ -451,7 +451,7 @@ void chMumbo_update(Actor *this) { sp48 = chMumbo_withinHorzDistToPlayer(0, -0x6B, 0xBC); } if (sp48 != 0) { - func_80311480(0xDA8, 7, NULL, NULL, NULL, NULL); + func_80311480(ASSET_DA8_DIALOG_MUMBO_CCW_AUTUMN, 7, NULL, NULL, NULL, NULL); func_803204E4(BKPROG_12_HAS_TRANSFORMED_BEFORE, TRUE); } } @@ -502,7 +502,7 @@ Actor *chMumbo_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx) { return out; } -void func_802D2B94(s32 this, s32 arg1){ +void chMumbo_detransformWarn(s32 this, s32 arg1){ s32 xform; xform = player_getTransformation(); if(xform == TRANSFORM_1_BANJO || xform == TRANSFORM_7_WISHWASHY || D_8037DDF2) @@ -512,15 +512,15 @@ void func_802D2B94(s32 this, s32 arg1){ if(D_8037DDF3) return; - func_80311480(func_8031FF74(BKPROG_83_MAGIC_GET_WEAK_TEXT, TRUE) ? 0xf5C: 0xf5b, 0xe, NULL, NULL, NULL, NULL); + func_80311480(func_8031FF74(BKPROG_83_MAGIC_GET_WEAK_TEXT, TRUE) ? ASSET_F5C_DIALOG_MUMBO_MAGIC_GET_WEAK_ABREV : ASSET_F5B_DIALOG_MUMBO_MAGIC_GET_WEAK_FULL, 0xe, NULL, NULL, NULL, NULL); } -void func_802D2C24(s32 this, s32 arg1){ +void chMumbo_detransformTrigger(s32 this, s32 arg1){ s32 xform; xform = player_getTransformation(); if(xform == TRANSFORM_1_BANJO || xform == TRANSFORM_7_WISHWASHY || D_8037DDF1) return; - func_80311480(func_8031FF74(BKPROG_84_MAGIC_ALL_GONE_TEXT, TRUE) ? 0xf5e: 0xf5d, 0xe, NULL, NULL, NULL, NULL); + func_80311480(func_8031FF74(BKPROG_84_MAGIC_ALL_GONE_TEXT, TRUE) ? ASSET_F5E_DIALOG_MUMBO_MAGIC_RUN_OUT_ABREV: ASSET_F5D_DIALOG_MUMBO_MAGIC_RUN_OUT_FULL, 0xe, NULL, NULL, NULL, NULL); D_8037DDF1++; func_8028FB88(TRANSFORM_1_BANJO); } diff --git a/src/core2/code_509D0.c b/src/core2/code_509D0.c index 7e006830..6a507614 100644 --- a/src/core2/code_509D0.c +++ b/src/core2/code_509D0.c @@ -3,7 +3,7 @@ #include "variables.h" extern void func_8028F7D4(f32, f32); -void func_802D8528(Actor *this); +void chLevelCollectible_update(Actor *this); extern void func_80329904(ActorMarker *, s32, f32*); extern ActorMarker *func_8028E86C(void); extern void func_803252D0(f32, s32); @@ -11,53 +11,51 @@ extern void func_8035646C(s32); ActorAnimationInfo D_80367B50[] = { {0, 0.0f}, - {0x18A, 1.5f}, - {0x18A, 1.5f}, - {0x18A, 1.5f}, - {0x18A, 1.5f}, - {0x18A, 1.5f} + {ASSET_18A_ANIM_XMAS_GIFT, 1.5f}, + {ASSET_18A_ANIM_XMAS_GIFT, 1.5f}, + {ASSET_18A_ANIM_XMAS_GIFT, 1.5f}, + {ASSET_18A_ANIM_XMAS_GIFT, 1.5f}, + {ASSET_18A_ANIM_XMAS_GIFT, 1.5f} }; ActorInfo D_80367B80 = { - MARKER_36_ORANGE_COLLECTABLE, ACTOR_29_ORANGE_COLLECTABLE, ASSET_2D2_MODEL_ORANGE, + MARKER_36_ORANGE_COLLECTIBLE, ACTOR_29_ORANGE_COLLECTIBLE, ASSET_2D2_MODEL_ORANGE, 0x5, NULL, - func_802D8528, func_80326224, func_80325888, + chLevelCollectible_update, func_80326224, func_80325888, 0, 0, 0.6f,0 }; ActorInfo D_80367BA4 = { MARKER_37_GOLD_BULLION, ACTOR_2A_GOLD_BULLION, ASSET_3C7_MODEL_GOLD_BULLION, 0x5, NULL, - func_802D8528, func_80326224, func_80325888, + chLevelCollectible_update, func_80326224, func_80325888, 0, 0, 0.6f, 0 }; ActorInfo D_80367BC8 = { - MARKER_1FD_BLUE_PRESENT_COLLECTABLE, ACTOR_1ED_BLUE_PRESENT_COLLECTABLE, ASSET_47F_MODEL_XMAS_GIFT_BLUE, + MARKER_1FD_BLUE_PRESENT_COLLECTIBLE, ACTOR_1ED_BLUE_PRESENT_COLLECTIBLE, ASSET_47F_MODEL_XMAS_GIFT_BLUE, 0x5, D_80367B50, - func_802D8528, func_80326224, func_80325888, + chLevelCollectible_update, func_80326224, func_80325888, 0, 0, 1.8f, 0 }; ActorInfo D_80367BEC = { - MARKER_1FE_GREEN_PRESENT_COLLECTABLE, ACTOR_1EF_GREEN_PRESENT_COLLECTABLE, ASSET_480_MODEL_XMAS_GIFT_GREEN, + MARKER_1FE_GREEN_PRESENT_COLLECTIBLE, ACTOR_1EF_GREEN_PRESENT_COLLECTIBLE, ASSET_480_MODEL_XMAS_GIFT_GREEN, 0x5, D_80367B50, - func_802D8528, func_80326224, func_80325888, + chLevelCollectible_update, func_80326224, func_80325888, 0, 0, 1.4f, 0 }; ActorInfo D_80367C10 = { - MARKER_1FF_RED_PRESENT_COLLECTABLE, ACTOR_1F1_RED_PRESENT_COLLECTABLE, ASSET_481_MODEL_XMAS_GIFT_RED, + MARKER_1FF_RED_PRESENT_COLLECTIBLE, ACTOR_1F1_RED_PRESENT_COLLECTIBLE, ASSET_481_MODEL_XMAS_GIFT_RED, 0x5, D_80367B50, - func_802D8528, func_80326224, func_80325888, + chLevelCollectible_update, func_80326224, func_80325888, 0, 0, 1.4f, 0 }; -struct31s D_80367C34 = {{0.2f, 0.4f}, {0.1f, 0.1f}, {0.0f, 0.01f}, {3.0f, 3.5f}, 0.1f, 0.1f}; - - /* .code */ -void func_802D7960(f32 position[3], enum asset_e sprite_id) { +void __chLevelCollectible_presentReturnEmitSparkles(f32 position[3], enum asset_e sprite_id) { + static struct31s D_80367C34 = {{0.2f, 0.4f}, {0.1f, 0.1f}, {0.0f, 0.01f}, {3.0f, 3.5f}, 0.1f, 0.1f}; ParticleEmitter *p_emitter; p_emitter = partEmitMgr_newEmitter(1); @@ -70,7 +68,7 @@ void func_802D7960(f32 position[3], enum asset_e sprite_id) { particleEmitter_emitN(p_emitter, 1); } -void func_802D7A40(f32 position[3], enum asset_e sprite_id) { +void __chLevelCollectible_presentCollectEmitSparkles(f32 position[3], enum asset_e sprite_id) { ParticleEmitter *p_emitter; p_emitter = partEmitMgr_newEmitter(8); @@ -86,68 +84,68 @@ void func_802D7A40(f32 position[3], enum asset_e sprite_id) { particleEmitter_emitN(p_emitter, 8); } -s32 func_802D7B94(ActorMarker *marker, enum asset_e text_id, s32 arg2) { +s32 __chLevelCollectible_dialogCallback(ActorMarker *marker, enum asset_e text_id, s32 arg2) { return -(levelSpecificFlags_get(0x2A) + levelSpecificFlags_get(0x2B) + levelSpecificFlags_get(0x2C)); } -void func_802D7BE8(enum asset_e text_id){ - func_80311174(text_id, 0, NULL, NULL, NULL, NULL, func_802D7B94); +void __chLevelCollectible_callDialog(enum asset_e text_id){ + func_80311174(text_id, 0, NULL, NULL, NULL, NULL, __chLevelCollectible_dialogCallback); } -void func_802D7C24(ActorMarker *marker, ActorMarker *other_marker) { +void __chLevelCollectible_collide(ActorMarker *marker, ActorMarker *other_marker) { Actor *this; f32 pad28; - s32 var_a3; + s32 dialog_id; f32 sp18[3]; this = marker_getActor(marker); - var_a3 = 0; + dialog_id = 0; if ((this->state == 1) || (this->state == 2)) { sp18[0] = this->position[0]; sp18[1] = this->position[1]; sp18[2] = this->position[2]; switch (marker->unk14_20) { - case MARKER_36_ORANGE_COLLECTABLE: + case MARKER_36_ORANGE_COLLECTIBLE: if (mapSpecificFlags_get(1)) return; func_8035646C(8); func_8030E6D4(SFX_B3_ORANGE_TALKING); - var_a3 = 0; + dialog_id = 0; break; case MARKER_37_GOLD_BULLION: func_8025A6EC(COMUSIC_2B_DING_B, 0x7FFF); timedFunc_set_1(0.5f, func_8035646C, 9); - var_a3 = 0; + dialog_id = 0; break; - case MARKER_1FD_BLUE_PRESENT_COLLECTABLE: - levelSpecificFlags_set(0x2A, 1); + case MARKER_1FD_BLUE_PRESENT_COLLECTIBLE: + levelSpecificFlags_set(0x2A, TRUE); func_8025A6EC(COMUSIC_2B_DING_B, 0x7FFF); - func_802D7A40(this->position, ASSET_711_SPRITE_SPARKLE_DARK_BLUE); - var_a3 = 0xC20; + __chLevelCollectible_presentCollectEmitSparkles(this->position, ASSET_711_SPRITE_SPARKLE_DARK_BLUE); + dialog_id = ASSET_C20_DIALOG_PRESENT_COLLECTIBLE_MEET_BLUE; break; - case MARKER_1FE_GREEN_PRESENT_COLLECTABLE: - levelSpecificFlags_set(0x2B, 1); + case MARKER_1FE_GREEN_PRESENT_COLLECTIBLE: + levelSpecificFlags_set(0x2B, TRUE); func_8025A6EC(COMUSIC_2B_DING_B, 0x7FFF); - func_802D7A40(this->position, 0x712); - var_a3 = 0xC21; + __chLevelCollectible_presentCollectEmitSparkles(this->position, ASSET_712_SPRITE_SPARKLE_GREEN); + dialog_id = ASSET_C21_DIALOG_PRESENT_COLLECTIBLE_MEET_GREEN; break; - case MARKER_1FF_RED_PRESENT_COLLECTABLE: - levelSpecificFlags_set(0x2C, 1); + case MARKER_1FF_RED_PRESENT_COLLECTIBLE: + levelSpecificFlags_set(0x2C, TRUE); func_8025A6EC(COMUSIC_2B_DING_B, 0x7FFF); - func_802D7A40(this->position, ASSET_715_SPRITE_SPARKLE_RED); - var_a3 = 0xC22; + __chLevelCollectible_presentCollectEmitSparkles(this->position, ASSET_715_SPRITE_SPARKLE_RED); + dialog_id = ASSET_C22_DIALOG_PRESENT_COLLECTIBLE_MEET_RED; break; default: break; } - if (var_a3 != 0) { - timedFunc_set_1(0.5f, (GenMethod_1)func_802D7BE8, var_a3); + if (dialog_id != 0) { + timedFunc_set_1(0.5f, (GenMethod_1)__chLevelCollectible_callDialog, dialog_id); } func_8028F030(this->modelCacheIndex); marker_despawn(marker); @@ -165,7 +163,7 @@ void func_802D7DE8(ActorMarker *marker, f32 arg1[3]) { sp4C = marker->unk14_20; this = marker_getActor(marker); ml_vec3f_to_vec3w(sp50, arg1); - if (sp4C == 0x37) { + if (sp4C == MARKER_37_GOLD_BULLION) { if (mapSpecificFlags_get(0)) { mapSpecificFlags_set(1, TRUE); } else { @@ -197,16 +195,16 @@ void func_802D8030(Actor *this){ local = (s32*)&this->local; *local = 1; - this->marker->unkC = func_802D7C24; + this->marker->unkC = __chLevelCollectible_collide; func_80328A84(this, 2); } -void func_802D8068(Actor *this) { +void __chLevelCollectible_returnObj(Actor *this) { s32 *local; f32 sp20; local = (s32*)&this->local; - if( (this->marker->unk14_20 != MARKER_36_ORANGE_COLLECTABLE) + if( (this->marker->unk14_20 != MARKER_36_ORANGE_COLLECTIBLE) || (this->unk78_13 == 0) ) { this->position[0] += this->velocity[0]; @@ -226,7 +224,7 @@ void func_802D8068(Actor *this) { } } this->position[1] = sp20; - if (this->marker->unk14_20 != MARKER_36_ORANGE_COLLECTABLE) { + if (this->marker->unk14_20 != MARKER_36_ORANGE_COLLECTIBLE) { FUNC_8030E8B4(SFX_21_EGG_BOUNCE_1, 0.76f, 25000, this->position, 1000, 2000); } else { FUNC_8030E8B4(SFX_B3_ORANGE_TALKING, 1.0f, 25000, this->position, 1000, 2000); @@ -235,19 +233,19 @@ void func_802D8068(Actor *this) { switch (this->marker->unk14_20) { case MARKER_37_GOLD_BULLION: break; - case MARKER_36_ORANGE_COLLECTABLE: + case MARKER_36_ORANGE_COLLECTIBLE: func_803252D0(1.7f, 2); func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x7FFF); break; - case MARKER_1FD_BLUE_PRESENT_COLLECTABLE: + case MARKER_1FD_BLUE_PRESENT_COLLECTIBLE: func_8025A6EC(COMUSIC_2B_DING_B, 32000); levelSpecificFlags_set(0x11, 1); break; - case MARKER_1FE_GREEN_PRESENT_COLLECTABLE: + case MARKER_1FE_GREEN_PRESENT_COLLECTIBLE: func_8025A6EC(COMUSIC_2B_DING_B, 32000); levelSpecificFlags_set(0x12, 1); break; - case MARKER_1FF_RED_PRESENT_COLLECTABLE: + case MARKER_1FF_RED_PRESENT_COLLECTIBLE: func_8025A6EC(COMUSIC_2B_DING_B, 32000); levelSpecificFlags_set(0x13, 1); break; @@ -257,14 +255,14 @@ void func_802D8068(Actor *this) { func_80328A84(this, 2); } switch (this->marker->unk14_20) { - case MARKER_1FD_BLUE_PRESENT_COLLECTABLE: - func_802D7960(this->position, ASSET_711_SPRITE_SPARKLE_DARK_BLUE); + case MARKER_1FD_BLUE_PRESENT_COLLECTIBLE: + __chLevelCollectible_presentReturnEmitSparkles(this->position, ASSET_711_SPRITE_SPARKLE_DARK_BLUE); break; - case MARKER_1FE_GREEN_PRESENT_COLLECTABLE: - func_802D7960(this->position, 0x712); + case MARKER_1FE_GREEN_PRESENT_COLLECTIBLE: + __chLevelCollectible_presentReturnEmitSparkles(this->position, 0x712); break; - case MARKER_1FF_RED_PRESENT_COLLECTABLE: - func_802D7960(this->position, ASSET_715_SPRITE_SPARKLE_RED); + case MARKER_1FF_RED_PRESENT_COLLECTIBLE: + __chLevelCollectible_presentReturnEmitSparkles(this->position, ASSET_715_SPRITE_SPARKLE_RED); break; } @@ -312,15 +310,15 @@ void func_802D84F4(Actor *this){ this->marker->propPtr->unk8_3 = ( this->state == 2 ); } -void func_802D8528(Actor *this){ +void chLevelCollectible_update(Actor *this){ s32 marker_id; if(this->despawn_flag) return; if(!this->unk16C_4){ this->unk16C_4 = TRUE; - if( this->marker->unk14_20 == MARKER_1FD_BLUE_PRESENT_COLLECTABLE - || this->marker->unk14_20 == MARKER_1FE_GREEN_PRESENT_COLLECTABLE - || this->marker->unk14_20 == MARKER_1FF_RED_PRESENT_COLLECTABLE + if( this->marker->unk14_20 == MARKER_1FD_BLUE_PRESENT_COLLECTIBLE + || this->marker->unk14_20 == MARKER_1FE_GREEN_PRESENT_COLLECTIBLE + || this->marker->unk14_20 == MARKER_1FF_RED_PRESENT_COLLECTIBLE ){ if(jiggyscore_isCollected(JIGGY_2E_FP_PRESENTS)){ marker_despawn(this->marker); @@ -339,7 +337,7 @@ void func_802D8528(Actor *this){ break; case 1:// 802D8620 - func_802D8068(this); + __chLevelCollectible_returnObj(this); break; case 2:// 802D863C @@ -350,7 +348,7 @@ void func_802D8528(Actor *this){ break; case 4:// 802D866C - func_802D8068(this); + __chLevelCollectible_returnObj(this); break; default: @@ -364,15 +362,15 @@ void func_802D8528(Actor *this){ case MARKER_37_GOLD_BULLION: //L802D86CC func_802D83EC(this); break; - case MARKER_36_ORANGE_COLLECTABLE: //L802D86DC + case MARKER_36_ORANGE_COLLECTIBLE: //L802D86DC if(mapSpecificFlags_get(3) && map_get() == MAP_2_MM_MUMBOS_MOUNTAIN){ marker_despawn(this->marker); } break; - case MARKER_1FD_BLUE_PRESENT_COLLECTABLE: - case MARKER_1FE_GREEN_PRESENT_COLLECTABLE: - case MARKER_1FF_RED_PRESENT_COLLECTABLE: + case MARKER_1FD_BLUE_PRESENT_COLLECTIBLE: + case MARKER_1FE_GREEN_PRESENT_COLLECTIBLE: + case MARKER_1FF_RED_PRESENT_COLLECTIBLE: func_802D84F4(this); break; } diff --git a/src/core2/code_59780.c b/src/core2/code_59780.c index 3e8d8e6d..26e4215c 100644 --- a/src/core2/code_59780.c +++ b/src/core2/code_59780.c @@ -12,11 +12,11 @@ void func_802E08F0(Actor *this); /* .data */ ActorAnimationInfo D_80368440[] = { {0, 0.0f}, - {0x98, 1.2f} + {ASSET_98_ANIM_FIRE_SPARKLE, 1.2f} }; ActorInfo D_80368450 = { - 0x72, 0xA2, 0x3AD, + MARKER_72_FIRE_SPARKLE, ACTOR_A2_FIRE_SPARKLE, ASSET_3AD_FIRE_SPARKLE, 0x1, D_80368440, func_802E08F0, func_80326224, func_80325888, 0, 0, 0.0f, 0 diff --git a/src/core2/code_7060.c b/src/core2/code_7060.c index d22c0b88..57049021 100644 --- a/src/core2/code_7060.c +++ b/src/core2/code_7060.c @@ -1,6 +1,7 @@ #include #include "functions.h" #include "variables.h" +#include "core2/statetimer.h" #include "prop.h" #include "enums.h" @@ -68,7 +69,7 @@ bool func_8028E060(s32 arg0, s32 *arg1){ void func_8028E0B0(ActorMarker *arg0){ bs_setState(bs_getIdleState()); - func_8029A980(0); + bsStoredState_setTrot(FALSE); miscflag_clear(0x16); miscflag_clear(0x18); } @@ -151,7 +152,7 @@ void func_8028E0F0(s32 arg0, s32 arg1[3]) { } func_8028F85C(&sp7C); func_80295A8C(); - func_8029A980(0); + bsStoredState_setTrot(FALSE); miscflag_clear(0x16); miscflag_clear(0x18); func_8028E060(arg0, &sp6C); @@ -195,7 +196,7 @@ void func_8028E4B0(void) { D_8037BFBC = (s32) D_8037BFD0; D_8037BFB8 = 1; func_80295A8C(); - func_8029A980(0); + bsStoredState_setTrot(FALSE); miscflag_clear(0x16); yaw_setIdeal(D_8037BFCC); yaw_applyIdeal(); @@ -263,15 +264,15 @@ ActorMarker *player_getMarker(void){ } u32 player_getTransformation(void){ - return _player_getTransformation(); + return bsStoredState_getTransformation(); } void func_8028E7EC(f32 arg0[3]){ climbGetBottom(arg0); } -f32 func_8028E80C(s32 arg0){ - return func_80291670(arg0); +f32 player_stateTimer_get(enum state_timer_e timer_id){ + return stateTimer_get(timer_id); } f32 func_8028E82C(void){ @@ -353,7 +354,7 @@ void func_8028E9C4(s32 arg0, f32 arg1[3]) { case 5: //L8028EA2C _player_getPosition(arg1); - switch(_player_getTransformation()){ + switch(bsStoredState_getTransformation()){ case TRANSFORM_3_PUMPKIN: //L8028EA68 if(map_get() == MAP_1B_MMM_MAD_MONSTER_MANSION){ arg1[1] += 100.0f; @@ -483,7 +484,7 @@ enum bsgroup_e func_8028ECAC(void) { case BS_16_BTROT_WALK: //L8028EE10 case BS_17_BTROT_EXIT: //L8028EE10 case BS_45_BTROT_SLIDE: //L8028EE10 - if(func_80291698(3)){ + if(stateTimer_isActive(STATE_TIMER_3_TURBO_TALON)){ return BSGROUP_6_TURBO_TALON_TRAINERS; } return BSGROUP_8_TROT; @@ -589,7 +590,7 @@ bool func_8028F098(void){ bool func_8028F0D4(void){ enum transformation_e xform_id; - xform_id = _player_getTransformation(); + xform_id = bsStoredState_getTransformation(); return xform_id == TRANSFORM_1_BANJO || xform_id == TRANSFORM_7_WISHWASHY; } @@ -769,8 +770,8 @@ s32 func_8028F6E4(enum bs_interrupt_e arg0, f32 arg1[3]){ return bs_checkInterrupt(arg0); } -void func_8028F710(s32 arg0, f32 arg1){ - func_802917E4(arg0, arg1); +void player_stateTimer_set(enum state_timer_e timer_id, f32 value){ + stateTimer_set(timer_id, value); } void func_8028F738(f32 bottom[3], f32 top[3], f32 radius, u32 arg3){ diff --git a/src/core2/code_73640.c b/src/core2/code_73640.c index e1f5e94f..e9b3de50 100644 --- a/src/core2/code_73640.c +++ b/src/core2/code_73640.c @@ -98,7 +98,7 @@ void *D_80381450[10]; s32 D_80381478[0X2C]; /* .code */ -void func_802FA5D0(void){ +void itemPrint_reset(void){ s32 i; for(i = 0; i < 0x2C; i++){ @@ -120,7 +120,7 @@ void func_802FA69C(void){ D_803692F8[i].unk14 = D_803692F8[i].unk0(i); func_802FB104(D_803692F8[i].unk10, D_803692F8[i].unk14); } - func_802FA5D0(); + itemPrint_reset(); } void func_802FA718(s32 arg0){ diff --git a/src/core2/code_956B0.c b/src/core2/code_956B0.c index 65afcf56..41bd329e 100644 --- a/src/core2/code_956B0.c +++ b/src/core2/code_956B0.c @@ -1449,7 +1449,7 @@ void func_8031FB6C(s32 arg0, s32 arg1) { } void func_8031FBA0(void) { - func_8029A8B0(); + bsStoredState_clear(); func_8031FFAC(); func_8034646C(); jiggyscore_clearAll(); diff --git a/src/core2/code_9A740.c b/src/core2/code_9A740.c index 56c624d9..cbc1e65a 100644 --- a/src/core2/code_9A740.c +++ b/src/core2/code_9A740.c @@ -32,10 +32,10 @@ void func_803216D0(enum map_e map){ } mapSavestate_init(); - func_803464F8(D_80383300.level); + itemscore_levelReset(D_80383300.level); jiggyscore_clearAllSpawned(); levelSpecificFlags_clear(); - func_8029A92C(); + bsStoredState_clearTimers(); func_803219A8(); if( func_80320454(0x17, 0) && getGameMode() != 0 @@ -76,7 +76,7 @@ void func_80321854(void){ ){ func_803204E4(0x22, 1); } - func_8029A924(); //null + bsStoredState_8029A924(); //null func_803465BC(); //null mapSavestate_free_all(); func_8032196C(); diff --git a/src/core2/code_9A9D0.c b/src/core2/code_9A9D0.c index 06f08eaf..55070648 100644 --- a/src/core2/code_9A9D0.c +++ b/src/core2/code_9A9D0.c @@ -2,6 +2,9 @@ #include "functions.h" #include "variables.h" +#include "core2/statetimer.h" +extern f32 player_stateTimer_get(enum state_timer_e); + void func_803219F4(s32 arg0); /* .bss */ @@ -93,7 +96,7 @@ void func_803219F4(s32 arg0){ void func_80321C34(void){ if( D_80383310 == 4 - && func_8028E80C(3) == 0.0f + && player_stateTimer_get(STATE_TIMER_3_TURBO_TALON) == 0.0f ){ func_803219F4(1); } diff --git a/src/core2/code_A6E0.c b/src/core2/code_A6E0.c deleted file mode 100644 index b18fd488..00000000 --- a/src/core2/code_A6E0.c +++ /dev/null @@ -1,65 +0,0 @@ -#include -#include "functions.h" -#include "variables.h" - -typedef struct{ - f32 unk0; - f32 unk4; -}Struct_Core2_A600_0; - -/* .bss */ -Struct_Core2_A600_0 D_8037C0A0[8]; - -/* .code */ -f32 func_80291670(s32 arg0){ - return D_8037C0A0[arg0].unk0; -} - -f32 func_80291684(s32 arg0){ - return D_8037C0A0[arg0].unk4; -} - -int func_80291698(s32 arg0){ - return D_8037C0A0[arg0].unk0 != 0.0f; -} - -int func_802916CC(s32 arg0){ - return D_8037C0A0[arg0].unk0 == 0.0f; -} - -int func_80291700(s32 arg0, f32 arg1){ - return (D_8037C0A0[arg0].unk0 < arg1) && (arg1 <= D_8037C0A0[arg0].unk4); -} - -void func_8029175C(void){} - -void func_80291764(void){ - int i; - for(i = 0; i < 7; i++){ - D_8037C0A0[i].unk0 = 0.0f; - D_8037C0A0[i].unk4 = 0.0f; - } -} - -void func_802917C4(s32 arg0){ - func_802917E4(arg0, 0.0f); -} - -void func_802917E4(s32 arg0, f32 arg1){ - D_8037C0A0[arg0].unk0 = arg1; - D_8037C0A0[arg0].unk4 = arg1; -} - -void func_80291804(void){ - int i; - f32 delta = time_getDelta(); - for(i = 0; i < 7; i++){ - D_8037C0A0[i].unk4 = D_8037C0A0[i].unk0; - if(0.0f != D_8037C0A0[i].unk4){ - D_8037C0A0[i].unk0 -= delta; - if(D_8037C0A0[i].unk0 < 0.0f){ - D_8037C0A0[i].unk0 = 0.0f; - } - } - } -} diff --git a/src/core2/code_ABC00.c b/src/core2/code_ABC00.c index 3c4a36e3..937bfd42 100644 --- a/src/core2/code_ABC00.c +++ b/src/core2/code_ABC00.c @@ -244,7 +244,7 @@ void jiggySpawn(enum jiggy_e jiggy_id, f32 pos[3]) { temp_v0->unk10.position[2] = pos[2]; temp_v0->unk0(&temp_v0->unk10); jiggyscore_setSpawned(jiggy_id, TRUE); - if (!jiggyscore_isCollected(jiggy_id) && (jiggy_id != 0x3E) && (jiggy_id != 0xB)) { + if (!jiggyscore_isCollected(jiggy_id) && (jiggy_id != JIGGY_3E_GV_GRABBA) && (jiggy_id != JIGGY_0B_TTC_JINJO)) { func_8024BD08(0); func_8025A55C(0, 4000, 5); func_8025A6EC(COMUSIC_3D_JIGGY_SPAWN, 0x7FFF); diff --git a/src/core2/code_AD110.c b/src/core2/code_AD110.c index 156f4b6c..1471601d 100644 --- a/src/core2/code_AD110.c +++ b/src/core2/code_AD110.c @@ -297,8 +297,8 @@ extern void func_80389C4C(s32, s32); extern void func_80389C74(s32, s32); extern void func_80389C9C(s32, s32); extern void func_80389CC4(s32, s32); -extern void func_802D2B94(s32, s32); -extern void func_802D2C24(s32, s32); +extern void chMumbo_detransformWarn(s32, s32); +extern void chMumbo_detransformTrigger(s32, s32); extern void func_8033443C(s32, s32); @@ -414,8 +414,8 @@ Method_core2_AD110 D_8036FE5C[] ={ func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, TTC_func_80389BFC, func_80389C24, func_80389C4C, - func_80389C74, func_80389C9C, func_80389CC4, func_802D2B94, - func_802D2C24, func_8033443C, func_8033443C, func_8033443C, + func_80389C74, func_80389C9C, func_80389CC4, chMumbo_detransformWarn, + chMumbo_detransformTrigger, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, func_8033443C, diff --git a/src/core2/code_B62B0.c b/src/core2/code_B62B0.c index d9bd936c..93946008 100644 --- a/src/core2/code_B62B0.c +++ b/src/core2/code_B62B0.c @@ -67,8 +67,8 @@ Struct_core2_B62B0_0 D_80370AC0[0xBB] = { {MARKER_218_LIMBO, 0x0001, {0x0588, 0x7584, 0x8100, 0x7584, 0x7604, 0x7604, 0x0684, 0x050C, 0x0A04, 0x0000, 0x2020}}, {MARKER_99_TEEHEE, 0x0001, {0x2020, 0x2020, 0x2020, 0x2020, 0x2020, 0x2020, 0x0000, 0x0000, 0x0804, 0x0000, 0x2424}}, {MARKER_296_TEEHEE_PURPLE, 0x0000, {0x2020, 0x2020, 0x2020, 0x2020, 0x2020, 0x2020, 0x0000, 0x0000, 0x0804, 0x0000, 0x2424}}, - {MARKER_96_RIPPER, 0x0001, {0x0A10, 0x890C, 0x8100, 0x8908, 0x8988, 0x8988, 0x0A84, 0x0914, 0x0984, 0x0000, 0x3024}}, - {MARKER_297_GIANT_RIPPER, 0x0001, {0x0A10, 0x890C, 0x8100, 0x8908, 0x8988, 0x8988, 0x0A84, 0x0914, 0x0984, 0x0000, 0x3024}}, + {MARKER_96_GRAVESTONE, 0x0001, {0x0A10, 0x890C, 0x8100, 0x8908, 0x8988, 0x8988, 0x0A84, 0x0914, 0x0984, 0x0000, 0x3024}}, + {MARKER_297_GIANT_GRAVESTONE, 0x0001, {0x0A10, 0x890C, 0x8100, 0x8908, 0x8988, 0x8988, 0x0A84, 0x0914, 0x0984, 0x0000, 0x3024}}, {MARKER_127_BAT, 0x0001, {0x0804, 0x0804, 0x8100, 0x0804, 0x0804, 0x0804, 0x0804, 0x0804, 0x0804, 0x0000, 0x1424}}, {MARKER_254_PORTRAIT_CHOMPA_A, 0x0001, {0x0804, 0x0804, 0x2020, 0x0804, 0x0804, 0x0804, 0x0804, 0x080C, 0x0804, 0x0000, 0x3444}}, {MARKER_1D1_PORTRAIT_CHOMPA_B, 0x0001, {0x0804, 0x0804, 0x1020, 0x0804, 0x0804, 0x0804, 0x0804, 0x080C, 0x0804, 0x0000, 0x1424}}, @@ -114,9 +114,9 @@ Struct_core2_B62B0_0 D_80370AC0[0xBB] = { {0x0097, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004, 0x0000, 0x0000, 0x0000}}, {0x0125, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0404}}, {0x0126, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0404}}, - {MARKER_1FD_BLUE_PRESENT_COLLECTABLE, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004}}, - {MARKER_1FE_GREEN_PRESENT_COLLECTABLE, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004}}, - {MARKER_1FF_RED_PRESENT_COLLECTABLE, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004}}, + {MARKER_1FD_BLUE_PRESENT_COLLECTIBLE, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004}}, + {MARKER_1FE_GREEN_PRESENT_COLLECTIBLE, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004}}, + {MARKER_1FF_RED_PRESENT_COLLECTIBLE, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004}}, {MARKER_20B_WOZZA, 0x7000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004, 0x0000, 0x0000, 0x7000}}, {MARKER_20F_WOZZA_IN_CAVE, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004, 0x0000, 0x0000, 0x0000}}, {0x0204, 0x0000, {0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7404, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000}}, diff --git a/src/core2/code_BEF20.c b/src/core2/code_BEF20.c index cbf78ad6..d515f208 100644 --- a/src/core2/code_BEF20.c +++ b/src/core2/code_BEF20.c @@ -191,7 +191,7 @@ void func_8034646C(void){ D_80385FE4 = FALSE; } -void func_803464F8(enum level_e level){ +void itemscore_levelReset(enum level_e level){ int i; for(i = 0; i < 6; i++){ @@ -212,7 +212,7 @@ void func_803464F8(enum level_e level){ D_80385F30[ITEM_20_BLUE_PRESENT] = 0; D_80385F30[ITEM_21_RED_PRESENT] = 0; D_80385F30[ITEM_22_CATERPILLAR] = 0; - func_802FA5D0(); + itemPrint_reset(); D_80385FE8 = 1; } @@ -358,13 +358,13 @@ void func_80346CE8(void){ enum item_e carriedobj_actorId2ItemId(enum actor_e actor_id){ switch(actor_id){ - case ACTOR_29_ORANGE_COLLECTABLE: return ITEM_19_ORANGE; + case ACTOR_29_ORANGE_COLLECTIBLE: return ITEM_19_ORANGE; case ACTOR_2A9_ACORN: return ITEM_23_ACORNS; case ACTOR_2A2_CATERPILLAR: return ITEM_22_CATERPILLAR; case ACTOR_2A_GOLD_BULLION: return ITEM_18_GOLD_BULLIONS; - case ACTOR_1ED_BLUE_PRESENT_COLLECTABLE: return ITEM_20_BLUE_PRESENT; - case ACTOR_1EF_GREEN_PRESENT_COLLECTABLE: return ITEM_1F_GREEN_PRESENT; - case ACTOR_1F1_RED_PRESENT_COLLECTABLE: return ITEM_21_RED_PRESENT; + case ACTOR_1ED_BLUE_PRESENT_COLLECTIBLE: return ITEM_20_BLUE_PRESENT; + case ACTOR_1EF_GREEN_PRESENT_COLLECTIBLE: return ITEM_1F_GREEN_PRESENT; + case ACTOR_1F1_RED_PRESENT_COLLECTIBLE: return ITEM_21_RED_PRESENT; } return 0; } @@ -548,7 +548,7 @@ void func_80347984(void){} void func_8034798C(void){ D_80385F30[ITEM_E_JIGGY] = jiggyscore_leveltotal(level_get()); - func_802FA5D0(); + itemPrint_reset(); } //restore item counts from savestate @@ -558,7 +558,7 @@ void func_803479C0(u8 *arg0){ D_80385F30[ITEM_F_RED_FEATHER] = arg0[2]; D_80385F30[ITEM_10_GOLD_FEATHER] = arg0[3]; D_80385F30[ITEM_26_JIGGY_TOTAL] = D_80385F30[ITEM_2B_UNKNOWN] = arg0[4]; - func_802FA5D0(); + itemPrint_reset(); } @@ -593,5 +593,5 @@ void func_80347AA8(void) { func_803204E4(0xC1, FALSE); func_803204E4(0xC0, FALSE); item_set(ITEM_16_LIFE, D_80386068); - func_802FA5D0(); + itemPrint_reset(); } diff --git a/src/core2/code_C0E0.c b/src/core2/code_C0E0.c index 021731d4..3598af51 100644 --- a/src/core2/code_C0E0.c +++ b/src/core2/code_C0E0.c @@ -61,7 +61,7 @@ s32 func_802930C0(struct_C0E0 *arg0, s32 arg1){ if(arg1 < 0) return 0; else{ - switch(_player_getTransformation()){ + switch(bsStoredState_getTransformation()){ case TRANSFORM_2_TERMITE: //L80293110 return func_80293070(arg0, arg1, &D_803637F0); case TRANSFORM_3_PUMPKIN: //L80293124 diff --git a/src/core2/code_CC1E0.c b/src/core2/code_CC1E0.c index 3db3a750..9d97997f 100644 --- a/src/core2/code_CC1E0.c +++ b/src/core2/code_CC1E0.c @@ -349,7 +349,7 @@ void fxegg_ass_update(void) { if (0.6 < func_8033EA14(1)) { projectile_getPosition(projectile_indx, sp80); if (fxegg_isCollidingWithPlayer(sp80)) { - chcollectable_collectEgg(NULL); + chCollectible_collectEgg(NULL); func_8033E984(); } } diff --git a/src/core2/code_D89E0.c b/src/core2/code_D89E0.c index bc0b34ca..41a7e04d 100644 --- a/src/core2/code_D89E0.c +++ b/src/core2/code_D89E0.c @@ -16,14 +16,14 @@ void func_80360828(Actor *this); /* .data */ ActorAnimationInfo D_80373090[] = { {0, 0.0f}, - { 0xAE, 12.0f}, - { 0xAD, 0.3f}, - { 0x9D, 2.0f}, - { 0x9D, 0.4f}, - { 0x9D, 0.35f}, - { 0xAD, 0.2f}, - {0x2A9, 0.4f}, - {0x2AA, 0.85f}, + { ASSET_AE_ANIM_BAT_ROOST, 12.0f}, + { ASSET_AD_ANIM_BAT_TAKE_FLIGHT, 0.3f}, + { ASSET_9D_ANIM_BAT_FLY, 2.0f}, + { ASSET_9D_ANIM_BAT_FLY, 0.4f}, + { ASSET_9D_ANIM_BAT_FLY, 0.35f}, + { ASSET_AD_ANIM_BAT_TAKE_FLIGHT, 0.2f}, + { ASSET_2A9_ANIM_BAT_FALL, 0.4f}, + { ASSET_2AA_ANIM_BAT_DIE, 0.85f}, }; ActorInfo D_803730D8 = { diff --git a/src/core2/code_D9B0.c b/src/core2/code_D9B0.c index a8687fd8..adb60b62 100644 --- a/src/core2/code_D9B0.c +++ b/src/core2/code_D9B0.c @@ -1,6 +1,7 @@ #include #include "functions.h" #include "variables.h" +#include "core2/statetimer.h" extern f32 func_802944A8(void); @@ -154,9 +155,9 @@ void func_80294BDC(void) { } if (D_8037C2E4 == 1.0) { if (sp24 & 0x10) { - func_802917E4(5, 0.18f); + stateTimer_set(STATE_TIMER_5_UNKNOWN, 0.18f); } else if (sp24 & 0x40) { - func_802917E4(6, 0.18f); + stateTimer_set(STATE_TIMER_6_UNKNOWN, 0.18f); } } } diff --git a/src/core2/code_E910.c b/src/core2/code_E910.c index ac20bae5..c294273c 100644 --- a/src/core2/code_E910.c +++ b/src/core2/code_E910.c @@ -3,6 +3,7 @@ #include "variables.h" #include "bsint.h" #include "bs_funcs.h" +#include "core2/statetimer.h" u8 D_80363820 = 0; @@ -10,7 +11,7 @@ bsMap D_80363824[] ={ {BS_1_IDLE, bsstand_init, bsstand_update, bsstand_end, func_802B5350}, {BS_2_WALK_SLOW, bswalk_slow_init, bswalk_slow_upate, NULL, func_802B5350}, {BS_WALK, bswalk_init, bswalk_update, NULL, func_802B5350}, - {BS_WALK_FAST, bswalk_fast_init, bswalk_fast_update, bswalk_fast_end, func_802B5350}, + {BS_4_WALK_FAST, bswalk_fast_init, bswalk_fast_update, bswalk_fast_end, func_802B5350}, {BS_5_JUMP, bsjump_init, bsjump_update, bsjump_end, func_80296608}, {BS_CLAW, bsclaw_init, bsclaw_update, bsclaw_end, func_80296608}, {BS_CROUCH, bscrouch_init, bscrouch_update, bscrouch_end, func_802B5350}, @@ -52,7 +53,7 @@ bsMap D_80363824[] ={ {BS_2D_SWIM_IDLE, func_802B5774, func_802B5950, func_802B5AF8, func_80296608}, {BS_2E_SWIM, func_802B5B18, func_802B5C40, func_802B5E10, func_80296608}, {BS_2F_FALL, bsjump_fall_init, bsjump_fall_update, bsjump_fall_end, func_80296608}, - {BS_30_DIVE_ENTER, func_802A7DAC, func_802A7E2C, func_802A7F4C, func_80296608}, + {BS_30_DIVE_ENTER, bsSwim_dive_init, func_802A7E2C, func_802A7F4C, func_80296608}, {BS_ROLL, bstwirl_init, bstwirl_update, bstwirl_end, func_802B5350}, {BS_SLIDE, bsslide_init, bsslide_update, bsslide_end, func_802B5350}, {0x33, func_802B9ACC, func_802B9B14, func_802B9AAC, func_802B9D00}, @@ -63,12 +64,12 @@ bsMap D_80363824[] ={ {BS_39_DIVE_A, func_802A7A54, func_802A7AB0, func_802A7BA8, func_80296608}, {BS_3A_CARRY_IDLE, bscarry_idle_init, bscarry_idle_update, bscarry_idle_end, bscarry_interrupt}, {BS_3B_CARRY_WALK, bscarry_walk_init, bscarry_walk_update, bscarry_walk_end, bscarry_interrupt}, - {0x3C, bstalk_init, bstalk_update, bstalk_end, bstalk_interrupt}, + {BS_3C_TALK, bstalk_init, bstalk_update, bstalk_end, bstalk_interrupt}, {BS_3D_FALL_TUMBLING, bsjump_tumble_init, bsjump_tumble_update, bsjump_tumble_end, func_80296608}, {BS_38_ANT_FALL, bsant_fall_init, bsant_fall_update, bsant_fall_end, func_80296590}, {BS_3E_ANT_OW, bsant_ow_init, bsant_ow_update, bsant_ow_end, func_80296590}, {0x3F, func_802B1BF4, func_802B1CF8, func_802B1DA4, func_80296590}, - {0x40, func_802B2BF0, func_802B2C58, func_802B2D50, func_80296590}, + {BS_40_PUMPKIN_FLUSH, func_802B2BF0, func_802B2C58, func_802B2D50, func_80296590}, {BS_41_DIE, bsdie_init, bsdie_update, bsdie_end, func_80296590}, {BS_42_DINGPOT, func_802A5120, func_802A5190, func_802A51C0, func_80296590}, {BS_43_ANT_DIE, bsant_die_init, bsant_die_update, bsant_die_end, func_80296590}, @@ -90,7 +91,7 @@ bsMap D_80363824[] ={ {BS_LONGLEG_SLIDE, bsblongleg_slide_init, bsblongleg_slide_update, bsblongleg_slide_end, func_802B5350}, {BS_56_RECOIL, func_802B3868, func_802B3954, func_802B3A20, func_80296590}, {BS_57_BOMB_END, func_802A4430, func_802A4548, func_802A4664, func_802A505C}, - {0x58, func_802A4748, func_802A48B4, func_802A4A40, func_80296590}, + {BS_58_BEAKBOMB_CRASH, bsbfly_beakbomb_crash_init, func_802A48B4, func_802A4A40, func_80296590}, {0x59, func_802A4CD0, func_802A4CF0, func_802A4D10, func_802A505C}, {BS_54_SWIM_DIE, func_802A7F6C, func_802A8098, func_802A82D4, func_80296590}, {BS_CARRY_THROW, bsthrow_init, bsthrow_update, bsthrow_end, bsthrow_interrupt}, @@ -213,7 +214,7 @@ void func_80295914(void){ func_80292D88(); func_80290070(); func_80290664(); - func_80291764(); + stateTimer_init(); eggShatter_init(); func_80294790(); func_80293DA4(); @@ -229,8 +230,8 @@ void func_80295914(void){ void func_80295A8C(void){ - func_802917E4(2, func_8029A900()); - func_802917E4(3, func_8029A90C()); + stateTimer_set(STATE_TIMER_2_LONGLEG, bsStoredState_getLongLegTimer()); + stateTimer_set(STATE_TIMER_3_TURBO_TALON, bsStoredState_getTurboTimer()); if(func_8028ADB4()) bs_setState(func_80292630()); else @@ -243,21 +244,21 @@ void func_80295B04(void){ enum bs_e sp20 = bs_getState(); bool is_in_talon_trot; - sp24 = (bslongleg_inSet(sp20)) ? func_80291670(2) : 0.0f; - func_8029A968(sp24); + sp24 = (bslongleg_inSet(sp20)) ? stateTimer_get(STATE_TIMER_2_LONGLEG) : 0.0f; + bsStoredState_setLongLegTimer(sp24); sp24 = 0.0f; is_in_talon_trot = FALSE; if(bsbtrot_inSet(sp20)){ - sp24 = func_80291670(3); + sp24 = stateTimer_get(STATE_TIMER_3_TURBO_TALON); is_in_talon_trot = TRUE; } - func_8029A980(is_in_talon_trot); - func_8029A974(sp24); + bsStoredState_setTrot(is_in_talon_trot); + bsStoredState_setTurboTimer(sp24); bs_setState(BS_5A_LOADZONE); baMarker_free(); func_8029065C(); - func_8029175C(); + stateTimer_free(); eggShatter_free(); baModel_free(); baAnim_free(); @@ -277,7 +278,7 @@ void func_80295C08(void (* arg0)(void)){ void func_80295C14(void){ func_802964B8(); func_80298A84(); - func_80291804(); + stateTimer_update(); func_8029E100(); func_8024E7C8();//controller_update func_8023E06C(); diff --git a/src/core2/code_EF50.c b/src/core2/code_EF50.c index 0dc9fd39..71a669a3 100644 --- a/src/core2/code_EF50.c +++ b/src/core2/code_EF50.c @@ -4,7 +4,7 @@ extern void func_80256E24(f32[3], f32, f32, f32, f32, f32); extern f32 func_8028EBA4(void); -extern void func_802C82C0(Actor *, s32); +extern void chJigsawDance_setState(Actor *, s32); extern void bsjig_setJiggyMarkerPtr(ActorMarker *); typedef struct{ @@ -65,8 +65,8 @@ enum bs_e func_80295EE0(enum bs_e arg0){ } else{ ml_vec3f_to_vec3h(sp20, D_8037C3E0.unk8); - sp1C = func_803282AC(ACTOR_5A_JIGGY_IN_HAND, sp20, 0); - func_802C82C0(sp1C, 3); + sp1C = func_803282AC(ACTOR_5A_JIGSAW_DANCE, sp20, 0); + chJigsawDance_setState(sp1C, 3); bsjig_setJiggyMarkerPtr(sp1C->marker); sp1C->unk38_31 = D_8037C3E0.unk18; arg0 = func_8029B504(); @@ -76,7 +76,7 @@ enum bs_e func_80295EE0(enum bs_e arg0){ } enum bs_e __get_rebound_state_id(void){ - switch(_player_getTransformation()){ + switch(bsStoredState_getTransformation()){ case TRANSFORM_3_PUMPKIN:// L8029606C return BS_PUMPKIN_BOUNCE; case TRANSFORM_2_TERMITE:// L80296074 @@ -158,7 +158,7 @@ enum bs_e func_802962BC(u32 arg0){ sp24 = item_getCount(ITEM_14_HEALTH); sp1C = arg0 < 1 && sp24 != 0; - switch(_player_getTransformation()){ + switch(bsStoredState_getTransformation()){ case TRANSFORM_2_TERMITE: //L80296314 if(sp1C) return BS_3E_ANT_OW; diff --git a/src/core2/gc/pauseMenu.c b/src/core2/gc/pauseMenu.c index c5d1bbb9..7d41095c 100644 --- a/src/core2/gc/pauseMenu.c +++ b/src/core2/gc/pauseMenu.c @@ -241,7 +241,7 @@ void gcpausemenu_zoomboxes_initTotalsMenu(void){ void gcpausemenu_80311A84(void){ s32 i; - func_802FA5D0(); + itemPrint_reset(); for(i = 0; i< 7; i++){ func_802FACA4(D_8036C604[i]); } diff --git a/src/core2/mapModel.c b/src/core2/mapModel.c index 3871c884..5f58200f 100644 --- a/src/core2/mapModel.c +++ b/src/core2/mapModel.c @@ -26,134 +26,134 @@ typedef struct { /* .data */ MapModelDescription D_8036ABE0[] = { - {MAP_1_SM_SPIRAL_MOUNTAIN, 0x14CF, 0x14D0, {1, 0, 1}, {-3, -4, -2}, 1.0f}, - {MAP_2_MM_MUMBOS_MOUNTAIN, 0x14AA, 0x14AB, {1, 0, 2}, {-2, 0, -2}, 1.0f}, - {MAP_5_TTC_BLUBBERS_SHIP, 0x146F, 0x1470, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_6_TTC_NIPPERS_SHELL, 0x146D, 0x146E, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_7_TTC_TREASURE_TROVE_COVE, 0x146B, 0x146C, {11, 2, 12}, {-12, -4, -5}, 1.0f}, - {MAP_8F_TTC_SHARKFOOD_ISLAND, 0x1473, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_A_TTC_SANDCASTLE, 0x1471, 0x1472, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_B_CC_CLANKERS_CAVERN, 0x14ED, 0x14EE, {0, 0, 0}, {0, -2, -1}, 1.0f}, - {MAP_C_MM_TICKERS_TOWER, 0x14AC, 0x14AD, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_D_BGS_BUBBLEGLOOP_SWAMP, 0x14D1, 0x14D2, {0, 1, 1}, {-1, -1, -1}, 1.0f}, - {MAP_E_MM_MUMBOS_SKULL, 0x14AE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_10_BGS_MR_VILE, 0x14D3, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_11_BGS_TIPTUP, 0x14D4, 0x14D5, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_12_GV_GOBIS_VALLEY, 0x1474, 0x1475, {4, 0, 4}, {-4, -4, -5}, 1.0f}, - {MAP_92_GV_SNS_CHAMBER, 0x147E, 0, {0, 1, 0}, {0, -1, 0}, 1.0f}, - {MAP_13_GV_MEMORY_GAME, 0x1476, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_14_GV_SANDYBUTTS_MAZE, 0x1478, 0x1479, {0, 0, 1}, {0, -2, 0}, 1.0f}, - {MAP_15_GV_WATER_PYRAMID, 0x147A, 0x147B, {0, 1, 0}, {0, 0, -1}, 1.0f}, - {MAP_16_GV_RUBEES_CHAMBER, 0x147C, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_1A_GV_INSIDE_JINXY, 0x147D, 0, {0, 1, 1}, {0, 0, 0}, 1.0f}, - {MAP_1B_MMM_MAD_MONSTER_MANSION, 0x147F, 0x1480, {2, 0, 2}, {-3, 1, -2}, 1.0f}, - {MAP_1C_MMM_CHURCH, 0x1486, 0x1487, {0, 0, 0}, {0, -1, 0}, 1.0f}, - {MAP_1D_MMM_CELLAR, 0x1482, 0x149B, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_1E_CS_START_NINTENDO, 0x149D, 0x14A1, {0, 1, 0}, {0, -1, 0}, 1.0f}, - {MAP_1F_CS_START_RAREWARE, 0x149E, 0x14A0, {-1, -1, 1}, {1, 1, 1}, 1.0f}, - {MAP_20_CS_END_NOT_100, 0x14A9, 0x14A5, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_21_CC_WITCH_SWITCH_ROOM, 0x14EF, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_22_CC_INSIDE_CLANKER, 0x14F0, 0x14F1, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_23_CC_GOLDFEATHER_ROOM, 0x14F2, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_24_MMM_TUMBLARS_SHED, 0x1488, 0, {0, 1, 0}, {0, -1, 0}, 1.0f}, - {MAP_25_MMM_WELL, 0x1495, 0x1496, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_26_MMM_NAPPERS_ROOM, 0x1485, 0x149A, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_27_FP_FREEZEEZY_PEAK, 0x14C8, 0x14C9, {2, 0, 2}, {-1, -1, -2}, 1.0f}, - {MAP_28_MMM_EGG_ROOM, 0x1489, 0x148A, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_29_MMM_NOTE_ROOM, 0x148B, 0x148C, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_2A_MMM_FEATHER_ROOM, 0x148D, 0x148E, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_2B_MMM_SECRET_CHURCH_ROOM, 0x1483, 0x1484, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_2C_MMM_BATHROOM, 0x148F, 0x1490, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_2D_MMM_BEDROOM, 0x1491, 0x1492, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_2E_MMM_HONEYCOMB_ROOM, 0x1493, 0x1494, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_2F_MMM_WATERDRAIN_BARREL, 0x1481, 0x1497, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_30_MMM_MUMBOS_SKULL, 0x14AE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_8D_MMM_INSIDE_LOGGO, 0x1498, 0x1499, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_31_RBB_RUSTY_BUCKET_BAY, 0x14B0, 0x14B1, {8, 0, 3}, {-2, -8, -7}, 1.0f}, - {MAP_8B_RBB_ANCHOR_ROOM, 0x14C5, 0x14C6, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_34_RBB_ENGINE_ROOM, 0x14B2, 0x14B3, {0, 0, 0}, {0, -3, 0}, 1.0f}, - {MAP_35_RBB_WAREHOUSE, 0x14B4, 0x14B5, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_36_RBB_BOATHOUSE, 0x14B6, 0x14B7, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_37_RBB_CONTAINER_1, 0x14B8, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_38_RBB_CONTAINER_3, 0x14BA, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_39_RBB_CREW_CABIN, 0x14BD, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_3A_RBB_BOSS_BOOM_BOX, 0x14BE, 0x14BF, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_3B_RBB_STORAGE_ROOM, 0x14C1, 0x14C2, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_3C_RBB_KITCHEN, 0x14C3, 0x14C4, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_3D_RBB_NAVIGATION_ROOM, 0x14C0, 0x14C7, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_3E_RBB_CONTAINER_2, 0x14B9, 0, {0, 0, 0}, {0, 1, 0}, 1.0f}, - {MAP_3F_RBB_CAPTAINS_CABIN, 0x14BB, 0x14BC, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_40_CCW_HUB, 0x14D8, 0x14E3, {0, 0, 0}, {0, -3, 0}, 1.0f}, - {MAP_41_FP_BOGGYS_IGLOO, 0x14CA, 0x14CE, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_7F_FP_WOZZAS_CAVE, 0x14CC, 0x14CD, {0, 0, 0}, {0, -1, 0}, 1.0f}, - {MAP_43_CCW_SPRING, 0x14D9, 0x14E4, {1, 0, 1}, {-1, -5, 0}, 1.0f}, - {MAP_44_CCW_SUMMER, 0x14DA, 0x14E5, {1, 0, 1}, {-1, -5, 0}, 1.0f}, - {MAP_45_CCW_AUTUMN, 0x14DB, 0x14E6, {1, 0, 1}, {-1, -6, 0}, 1.0f}, - {MAP_46_CCW_WINTER, 0x14DC, 0x14E7, {1, 0, 1}, {-1, -5, 0}, 1.0f}, - {MAP_47_BGS_MUMBOS_SKULL, 0x14AE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_48_FP_MUMBOS_SKULL, 0x14AE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_4A_CCW_SPRING_MUMBOS_SKULL, 0x14AE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_4B_CCW_SUMMER_MUMBOS_SKULL, 0x14AE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_4C_CCW_AUTUMN_MUMBOS_SKULL, 0x14AE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_4D_CCW_WINTER_MUMBOS_SKULL, 0x14AE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_53_FP_CHRISTMAS_TREE, 0x14CB, 0, {2, 1, 2}, {-2, -1, -2}, 1.0f}, - {MAP_5A_CCW_SUMMER_ZUBBA_HIVE, 0x14DD, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_5B_CCW_SPRING_ZUBBA_HIVE, 0x14DD, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_5C_CCW_AUTUMN_ZUBBA_HIVE, 0x14DD, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_5E_CCW_SPRING_NABNUTS_HOUSE, 0x14DE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_5F_CCW_SUMMER_NABNUTS_HOUSE, 0x14DE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_60_CCW_AUTUMN_NABNUTS_HOUSE, 0x14DE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_61_CCW_WINTER_NABNUTS_HOUSE, 0x14DE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_62_CCW_WINTER_HONEYCOMB_ROOM, 0x14E0, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_63_CCW_AUTUMN_NABNUTS_WATER_SUPPLY, 0x14E1, 0x14E2, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_64_CCW_WINTER_NABNUTS_WATER_SUPPLY, 0x14E1, 0x14E2, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_65_CCW_SPRING_WHIPCRACK_ROOM, 0x14DF, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_66_CCW_SUMMER_WHIPCRACK_ROOM, 0x14DF, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_67_CCW_AUTUMN_WHIPCRACK_ROOM, 0x14DF, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_68_CCW_WINTER_WHIPCRACK_ROOM, 0x14DF, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_69_GL_MM_LOBBY, 0x14F3, 0x150B, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_6A_GL_TTC_AND_CC_PUZZLE, 0x14F4, 0x150C, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_6B_GL_180_NOTE_DOOR, 0x14F5, 0x1510, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_6C_GL_RED_CAULDRON_ROOM, 0x14F6, 0x150D, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_6D_GL_TTC_LOBBY, 0x14F7, 0x1512, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_6E_GL_GV_LOBBY, 0x14F8, 0x14A8, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_6F_GL_FP_LOBBY, 0x14F9, 0x14FA, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_74_GL_GV_PUZZLE, 0x14FD, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_70_GL_CC_LOBBY, 0x14FB, 0x1507, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_75_GL_MMM_LOBBY, 0x14FE, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_7A_GL_CRYPT, 0x14FF, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_71_GL_STATUE_ROOM, 0x1500, 0x150E, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_72_GL_BGS_LOBBY, 0x1501, 0x1511, {1, 0, 1}, {0, -2, -1}, 1.0f}, - {MAP_76_GL_640_NOTE_DOOR, 0x1502, 0x1508, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_77_GL_RBB_LOBBY, 0x1503, 0x1509, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_78_GL_RBB_AND_MMM_PUZZLE, 0x1504, 0x150A, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_79_GL_CCW_LOBBY, 0x1505, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_80_GL_FF_ENTRANCE, 0x1506, 0x1514, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_93_GL_DINGPOT, 0x150F, 0x1513, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_90_GL_BATTLEMENTS, 0x14FC, 0x1515, {6, 2, 7}, {-6, -3, -5}, 1.0f}, - {MAP_7B_CS_INTRO_GL_DINGPOT_1, 0x150F, 0, {0, 0, 0}, {0, -1, 0}, 1.6666666f}, - {MAP_7C_CS_INTRO_BANJOS_HOUSE_1, 0x14A2, 0, {0, 0, 0}, {0, 0, 0}, 1.6666666f}, - {MAP_7D_CS_SPIRAL_MOUNTAIN_1, 0x14CF, 0x14D0, {0, 0, 2}, {0, -4, -2}, 1.0f}, - {MAP_7E_CS_SPIRAL_MOUNTAIN_2, 0x14CF, 0x14D0, {0, 0, 2}, {0, -4, -2}, 1.0f}, - {MAP_81_CS_INTRO_GL_DINGPOT_2, 0x150F, 0, {0, 0, 0}, {0, -1, 0}, 1.6666666f}, - {MAP_82_CS_ENTERING_GL_MACHINE_ROOM, 0x150F, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_83_CS_GAME_OVER_MACHINE_ROOM, 0x150F, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_84_CS_UNUSED_MACHINE_ROOM, 0x150F, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_85_CS_SPIRAL_MOUNTAIN_3, 0x14CF, 0x14D0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_86_CS_SPIRAL_MOUNTAIN_4, 0x14CF, 0x14D0, {0, 0, 0}, {0, -4, 0}, 1.0f}, - {MAP_87_CS_SPIRAL_MOUNTAIN_5, 0x14A6, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_88_CS_SPIRAL_MOUNTAIN_6, 0x14CF, 0x14D0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_94_CS_INTRO_SPIRAL_7, 0x14CF, 0x14D0, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_98_CS_END_SPIRAL_MOUNTAIN_1, 0x149F, 0x14A3, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_99_CS_END_SPIRAL_MOUNTAIN_2, 0x149F, 0x14A3, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_95_CS_END_ALL_100, 0x14A9, 0x14A5, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_89_CS_INTRO_BANJOS_HOUSE_2, 0x14A2, 0x14A4, {0, 0, 0}, {0, 0, 0}, 1.6666666f}, - {MAP_8A_CS_INTRO_BANJOS_HOUSE_3, 0x14A2, 0x14A4, {0, 0, 0}, {0, 0, 0}, 1.6666666f}, - {MAP_96_CS_END_BEACH_1, 0x14A9, 0x14A5, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_97_CS_END_BEACH_2, 0x14A9, 0x14A5, {2, 0, -3}, {4, 0, -1}, 1.0f}, - {MAP_91_FILE_SELECT, 0x14A2, 0x14A4, {0, 0, 0}, {0, 0, 0}, 1.6666666f}, - {MAP_8C_SM_BANJOS_HOUSE, 0x14A2, 0x14A4, {0, 0, 0}, {0, 0, 0}, 1.0f}, - {MAP_8E_GL_FURNACE_FUN, 0x14E8, 0, {0, 0, 0}, {0, 0, 0}, 1.0f}, + {MAP_1_SM_SPIRAL_MOUNTAIN, ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA, ASSET_14D0_MODEL_SM_SPIRAL_MOUNTAIN_XLU, { 1, 0, 1}, { -3, -4, -2}, 1.0f}, + {MAP_2_MM_MUMBOS_MOUNTAIN, ASSET_14AA_MODEL_MM_MUMBOS_MOUNTAIN_OPA, ASSET_14AB_MODEL_MM_MUMBOS_MOUNTAIN_XLU, { 1, 0, 2}, { -2, 0, -2}, 1.0f}, + {MAP_5_TTC_BLUBBERS_SHIP, ASSET_146F_MODEL_TTC_BLUBBERS_SHIP_OPA, ASSET_1470_MODEL_TTC_BLUBBERS_SHIP_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_6_TTC_NIPPERS_SHELL, ASSET_146D_MODEL_TTC_NIPPERS_SHELL_OPA, ASSET_146E_MODEL_TTC_NIPPERS_SHELL_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_7_TTC_TREASURE_TROVE_COVE, ASSET_146B_MODEL_TTC_TREASURE_TROVE_COVE_OPA, ASSET_146C_MODEL_TTC_TREASURE_TROVE_COVE_XLU, {11, 2, 12}, {-12, -4, -5}, 1.0f}, + {MAP_8F_TTC_SHARKFOOD_ISLAND, ASSET_1473_MODEL_TTC_SHARKFOOD_ISLAND_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_A_TTC_SANDCASTLE, ASSET_1471_MODEL_TTC_SANDCASTLE_OPA, ASSET_1472_MODEL_TTC_SANDCASTLE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_B_CC_CLANKERS_CAVERN, ASSET_14ED_MODEL_CC_CLANKERS_CAVERN_OPA, ASSET_14EE_MODEL_CC_CLANKERS_CAVERN_XLU, { 0, 0, 0}, { 0, -2, -1}, 1.0f}, + {MAP_C_MM_TICKERS_TOWER, ASSET_14AC_MODEL_SM_TICKERS_TOWER_OPA, ASSET_14AD_MODEL_SM_TICKERS_TOWER_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_D_BGS_BUBBLEGLOOP_SWAMP, ASSET_14D1_MODEL_BGS_BUBBLEGLOOP_SWAMP_OPA, ASSET_14D2_MODEL_BGS_BUBBLEGLOOP_SWAMP_XLU, { 0, 1, 1}, { -1, -1, -1}, 1.0f}, + {MAP_E_MM_MUMBOS_SKULL, ASSET_14AE_MODEL_MUMBOS_SKULL_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_10_BGS_MR_VILE, ASSET_14D3_MODEL_BGS_MR_VILE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_11_BGS_TIPTUP, ASSET_14D4_MODEL_BGS_TIPTUP_OPA, ASSET_14D5_MODEL_BGS_TIPTUP_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_12_GV_GOBIS_VALLEY, ASSET_1474_MODEL_GV_GOBIS_VALLEY_OPA, ASSET_1475_MODEL_GV_GOBIS_VALLEY_XLU, { 4, 0, 4}, { -4, -4, -5}, 1.0f}, + {MAP_92_GV_SNS_CHAMBER, ASSET_147E_MODEL_GV_SNS_CHAMBER_OPA, 0, { 0, 1, 0}, { 0, -1, 0}, 1.0f}, + {MAP_13_GV_MEMORY_GAME, ASSET_1476_MODEL_GV_MEMORY_GAME_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_14_GV_SANDYBUTTS_MAZE, ASSET_1478_MODEL_GV_SANDYBUTTS_MAZE_OPA, ASSET_1479_MODEL_GV_SANDYBUTTS_MAZE_XLU, { 0, 0, 1}, { 0, -2, 0}, 1.0f}, + {MAP_15_GV_WATER_PYRAMID, ASSET_147A_MODEL_GV_WATER_PYRAMIDS_OPA, ASSET_147B_MODEL_GV_WATER_PYRAMIDS_XLU, { 0, 1, 0}, { 0, 0, -1}, 1.0f}, + {MAP_16_GV_RUBEES_CHAMBER, ASSET_147C_MODEL_GV_RUBEES_CHAMBER_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_1A_GV_INSIDE_JINXY, ASSET_147D_MODEL_GV_INSIDE_JINXY_OPA, 0, { 0, 1, 1}, { 0, 0, 0}, 1.0f}, + {MAP_1B_MMM_MAD_MONSTER_MANSION, ASSET_147F_MODEL_MMM_MAD_MONSTER_MANSION_OPA, ASSET_1480_MODEL_MMM_MAD_MONSTER_MANSION_XLU, { 2, 0, 2}, { -3, 1, -2}, 1.0f}, + {MAP_1C_MMM_CHURCH, ASSET_1486_MODEL_MMM_CHURCH_OPA, ASSET_1487_MODEL_MMM_CHURCH_XLU, { 0, 0, 0}, { 0, -1, 0}, 1.0f}, + {MAP_1D_MMM_CELLAR, ASSET_1482_MODEL_MMM_CELLAR_OPA, ASSET_149B_MODEL_MMM_CELLAR_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_1E_CS_START_NINTENDO, ASSET_149D_MODEL_CS_START_NINTENDO_OPA, ASSET_14A1_MODEL_CS_START_NINTENDO_XLU, { 0, 1, 0}, { 0, -1, 0}, 1.0f}, + {MAP_1F_CS_START_RAREWARE, ASSET_149E_MODEL_CS_START_RAREWARE_OPA, ASSET_14A0_MODEL_CS_START_RAREWARE_XLU, {-1, -1, 1}, { 1, 1, 1}, 1.0f}, + {MAP_20_CS_END_NOT_100, ASSET_14A9_MODEL_CS_BEACH_OPA, ASSET_14A5_MODEL_CS_BEACH_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_21_CC_WITCH_SWITCH_ROOM, ASSET_14EF_MODEL_CC_WITCH_SWITCH_ROOM_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_22_CC_INSIDE_CLANKER, ASSET_14F0_MODEL_CC_INSIDE_CLANKER_OPA, ASSET_14F1_MODEL_CC_INSIDE_CLANKER_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_23_CC_GOLDFEATHER_ROOM, ASSET_14F2_MODEL_CC_GOLD_FEATHER_ROOM_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_24_MMM_TUMBLARS_SHED, ASSET_1488_MODEL_MMM_TUMBLARS_SHED_OPA, 0, { 0, 1, 0}, { 0, -1, 0}, 1.0f}, + {MAP_25_MMM_WELL, ASSET_1495_MODEL_MMM_WELL_OPA, ASSET_1496_MODEL_MMM_WELL_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_26_MMM_NAPPERS_ROOM, ASSET_1485_MODEL_MMM_NAPPERS_ROOM_OPA, ASSET_149A_MODEL_MMM_NAPPERS_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_27_FP_FREEZEEZY_PEAK, ASSET_14C8_MODEL_FP_FREEZEEZY_PEAK_OPA, ASSET_14C9_MODEL_FP_FREEZEEZY_PEAK_XLU, { 2, 0, 2}, { -1, -1, -2}, 1.0f}, + {MAP_28_MMM_EGG_ROOM, ASSET_1489_MODEL_MMM_EGG_ROOM_OPA, ASSET_148A_MODEL_MMM_EGG_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_29_MMM_NOTE_ROOM, ASSET_148B_MODEL_MMM_NOTE_ROOM_OPA, ASSET_148C_MODEL_MMM_NOTE_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_2A_MMM_FEATHER_ROOM, ASSET_148D_MODEL_MMM_FEATHER_ROOM_OPA, ASSET_148E_MODEL_MMM_FEATHER_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_2B_MMM_SECRET_CHURCH_ROOM, ASSET_1483_MODEL_MMM_SECRET_CHURCH_ROOM_OPA, ASSET_1484_MODEL_MMM_SECRET_CHURCH_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_2C_MMM_BATHROOM, ASSET_148F_MODEL_MMM_BATHROOM_OPA, ASSET_1490_MODEL_MMM_BATHROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_2D_MMM_BEDROOM, ASSET_1491_MODEL_MMM_BEDROOM_OPA, ASSET_1492_MODEL_MMM_BEDROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_2E_MMM_HONEYCOMB_ROOM, ASSET_1493_MODEL_MMM_HONEYCOMB_ROOM_OPA, ASSET_1494_MODEL_MMM_HONEYCOMB_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_2F_MMM_WATERDRAIN_BARREL, ASSET_1481_MODEL_MMM_RAINBARREL_OPA, ASSET_1497_MODEL_MMM_RAINBARREL_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_30_MMM_MUMBOS_SKULL, ASSET_14AE_MODEL_MUMBOS_SKULL_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_8D_MMM_INSIDE_LOGGO, ASSET_1498_MODEL_MMM_INSIDE_LOGGO_OPA, ASSET_1499_MODEL_MMM_INSIDE_LOGGO_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_31_RBB_RUSTY_BUCKET_BAY, ASSET_14B0_MODEL_RBB_RUSTY_BUCKET_BAY_OPA, ASSET_14B1_MODEL_RBB_RUSTY_BUCKET_BAY_XLU, { 8, 0, 3}, { -2, -8, -7}, 1.0f}, + {MAP_8B_RBB_ANCHOR_ROOM, ASSET_14C5_MODEL_RBB_ANCHOR_ROOM_OPA, ASSET_14C6_MODEL_RBB_ANCHOR_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_34_RBB_ENGINE_ROOM, ASSET_14B2_MODEL_RBB_ENGINE_ROOM_OPA, ASSET_14B3_MODEL_RBB_ENGINE_ROOM_XLU, { 0, 0, 0}, { 0, -3, 0}, 1.0f}, + {MAP_35_RBB_WAREHOUSE, ASSET_14B4_MODEL_RBB_WAREHOUSE_OPA, ASSET_14B5_MODEL_RBB_WAREHOUSE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_36_RBB_BOATHOUSE, ASSET_14B6_MODEL_RBB_BOATHOUSE_OPA, ASSET_14B7_MODEL_RBB_BOATHOUSE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_37_RBB_CONTAINER_1, ASSET_14B8_MODEL_RBB_CONTAINER_1_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_38_RBB_CONTAINER_3, ASSET_14BA_MODEL_RBB_CONTAINER_3_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_39_RBB_CREW_CABIN, ASSET_14BD_MODEL_RBB_CREW_CABIN_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_3A_RBB_BOSS_BOOM_BOX, ASSET_14BE_MODEL_RBB_BOSS_BOOM_BOX_OPA, ASSET_14BF_MODEL_RBB_BOSS_BOOM_BOX_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_3B_RBB_STORAGE_ROOM, ASSET_14C1_MODEL_RBB_STORAGE_ROOM_OPA, ASSET_14C2_MODEL_RBB_STORAGE_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_3C_RBB_KITCHEN, ASSET_14C3_MODEL_RBB_KITCHEN_OPA, ASSET_14C4_MODEL_RBB_KITCHEN_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_3D_RBB_NAVIGATION_ROOM, ASSET_14C0_MODEL_RBB_NAVIGATION_ROOM_OPA, ASSET_14C7_MODEL_RBB_NAVIGATION_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_3E_RBB_CONTAINER_2, ASSET_14B9_MODEL_RBB_CONTAINER_2_OPA, 0, { 0, 0, 0}, { 0, 1, 0}, 1.0f}, + {MAP_3F_RBB_CAPTAINS_CABIN, ASSET_14BB_MODEL_RBB_CAPTIANS_CABIN_OPA, ASSET_14BC_MODEL_RBB_CAPTIANS_CABIN_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_40_CCW_HUB, ASSET_14D8_MODEL_CCW_HUB_OPA, ASSET_14E3_MODEL_CCW_HUB_XLU, { 0, 0, 0}, { 0, -3, 0}, 1.0f}, + {MAP_41_FP_BOGGYS_IGLOO, ASSET_14CA_MODEL_FP_BOGGYS_IGLOO_OPA, ASSET_14CE_MODEL_FP_BOGGYS_IGLOO_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_7F_FP_WOZZAS_CAVE, ASSET_14CC_MODEL_FP_WOZZAS_CAVE_OPA, ASSET_14CD_MODEL_FP_WOZZAS_CAVE_XLU, { 0, 0, 0}, { 0, -1, 0}, 1.0f}, + {MAP_43_CCW_SPRING, ASSET_14D9_MODEL_CCW_SPRING_OPA, ASSET_14E4_MODEL_CCW_SPRING_XLU, { 1, 0, 1}, { -1, -5, 0}, 1.0f}, + {MAP_44_CCW_SUMMER, ASSET_14DA_MODEL_CCW_SUMMER_OPA, ASSET_14E5_MODEL_CCW_SUMMER_XLU, { 1, 0, 1}, { -1, -5, 0}, 1.0f}, + {MAP_45_CCW_AUTUMN, ASSET_14DB_MODEL_CCW_AUTUMN_OPA, ASSET_14E6_MODEL_CCW_AUTUMN_XLU, { 1, 0, 1}, { -1, -6, 0}, 1.0f}, + {MAP_46_CCW_WINTER, ASSET_14DC_MODEL_CCW_WINTER_OPA, ASSET_14E7_MODEL_CCW_WINTER_XLU, { 1, 0, 1}, { -1, -5, 0}, 1.0f}, + {MAP_47_BGS_MUMBOS_SKULL, ASSET_14AE_MODEL_MUMBOS_SKULL_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_48_FP_MUMBOS_SKULL, ASSET_14AE_MODEL_MUMBOS_SKULL_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_4A_CCW_SPRING_MUMBOS_SKULL, ASSET_14AE_MODEL_MUMBOS_SKULL_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_4B_CCW_SUMMER_MUMBOS_SKULL, ASSET_14AE_MODEL_MUMBOS_SKULL_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_4C_CCW_AUTUMN_MUMBOS_SKULL, ASSET_14AE_MODEL_MUMBOS_SKULL_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_4D_CCW_WINTER_MUMBOS_SKULL, ASSET_14AE_MODEL_MUMBOS_SKULL_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_53_FP_CHRISTMAS_TREE, ASSET_14CB_MODEL_FP_XMAS_TREE_OPA, 0, { 2, 1, 2}, { -2, -1, -2}, 1.0f}, + {MAP_5A_CCW_SUMMER_ZUBBA_HIVE, ASSET_14DD_MODEL_CCW_ZUBBA_HIVE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_5B_CCW_SPRING_ZUBBA_HIVE, ASSET_14DD_MODEL_CCW_ZUBBA_HIVE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_5C_CCW_AUTUMN_ZUBBA_HIVE, ASSET_14DD_MODEL_CCW_ZUBBA_HIVE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_5E_CCW_SPRING_NABNUTS_HOUSE, ASSET_14DE_MODEL_CCW_NABNUTS_HOUSE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_5F_CCW_SUMMER_NABNUTS_HOUSE, ASSET_14DE_MODEL_CCW_NABNUTS_HOUSE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_60_CCW_AUTUMN_NABNUTS_HOUSE, ASSET_14DE_MODEL_CCW_NABNUTS_HOUSE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_61_CCW_WINTER_NABNUTS_HOUSE, ASSET_14DE_MODEL_CCW_NABNUTS_HOUSE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_62_CCW_WINTER_HONEYCOMB_ROOM, ASSET_14E0_MODEL_CCW_HONEYCOMB_ROOM_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_63_CCW_AUTUMN_NABNUTS_WATER_SUPPLY, ASSET_14E1_MODEL_CCW_NABBUTS_STASH_OPA, ASSET_14E2_MODEL_CCW_NABBUTS_STASH_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_64_CCW_WINTER_NABNUTS_WATER_SUPPLY, ASSET_14E1_MODEL_CCW_NABBUTS_STASH_OPA, ASSET_14E2_MODEL_CCW_NABBUTS_STASH_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_65_CCW_SPRING_WHIPCRACK_ROOM, ASSET_14DF_MODEL_CCW_WHIPCRACK_ROOM_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_66_CCW_SUMMER_WHIPCRACK_ROOM, ASSET_14DF_MODEL_CCW_WHIPCRACK_ROOM_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_67_CCW_AUTUMN_WHIPCRACK_ROOM, ASSET_14DF_MODEL_CCW_WHIPCRACK_ROOM_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_68_CCW_WINTER_WHIPCRACK_ROOM, ASSET_14DF_MODEL_CCW_WHIPCRACK_ROOM_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_69_GL_MM_LOBBY, ASSET_14F3_MODEL_GL_MM_LOBBY_OPA, ASSET_150B_MODEL_GL_MM_LOBBY_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_6A_GL_TTC_AND_CC_PUZZLE, ASSET_14F4_MODEL_GL_TTC_AND_CC_PUZZLE_OPA, ASSET_150C_MODEL_GL_TTC_AND_CC_PUZZLE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_6B_GL_180_NOTE_DOOR, ASSET_14F5_MODEL_GL_180_NOTE_DOOR_OPA, ASSET_1510_MODEL_GL_180_NOTE_DOOR_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_6C_GL_RED_CAULDRON_ROOM, ASSET_14F6_MODEL_GL_RED_CAULDRON_ROOM_OPA, ASSET_150D_MODEL_GL_RED_CAULDRON_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_6D_GL_TTC_LOBBY, ASSET_14F7_MODEL_GL_TTC_LOBBY_OPA, ASSET_1512_MODEL_GL_TTC_LOBBY_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_6E_GL_GV_LOBBY, ASSET_14F8_MODEL_GL_GV_LOBBY_OPA, ASSET_14A8_MODEL_GL_GV_LOBBY_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_6F_GL_FP_LOBBY, ASSET_14F9_MODEL_GL_FP_LOBBY_OPA, ASSET_14FA_MODEL_GL_FP_LOBBY_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_74_GL_GV_PUZZLE, ASSET_14FD_MODEL_GL_GV_PUZZLE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_70_GL_CC_LOBBY, ASSET_14FB_MODEL_GL_CC_LOBBY_OPA, ASSET_1507_MODEL_GL_CC_LOBBY_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_75_GL_MMM_LOBBY, ASSET_14FE_MODEL_GL_MMM_LOBBY_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_7A_GL_CRYPT, ASSET_14FF_MODEL_GL_CRYPT_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_71_GL_STATUE_ROOM, ASSET_1500_MODEL_GL_STATUE_ROOM_OPA, ASSET_150E_MODEL_GL_STATUE_ROOM_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_72_GL_BGS_LOBBY, ASSET_1501_MODEL_GL_BGS_LOBBY_OPA, ASSET_1511_MODEL_GL_BGS_LOBBY_XLU, { 1, 0, 1}, { 0, -2, -1}, 1.0f}, + {MAP_76_GL_640_NOTE_DOOR, ASSET_1502_MODEL_GL_640_NOTE_DOOR_OPA, ASSET_1508_MODEL_GL_640_NOTE_DOOR_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_77_GL_RBB_LOBBY, ASSET_1503_MODEL_GL_RBB_LOBBY_OPA, ASSET_1509_MODEL_GL_RBB_LOBBY_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_78_GL_RBB_AND_MMM_PUZZLE, ASSET_1504_MODEL_RBB_AND_MMM_PUZZLE_OPA, ASSET_150A_MODEL_RBB_AND_MMM_PUZZLE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_79_GL_CCW_LOBBY, ASSET_1505_MODEL_GL_CCW_LOBBY_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_80_GL_FF_ENTRANCE, ASSET_1506_MODEL_GL_FF_ENTRANCE_OPA, ASSET_1514_MODEL_GL_FF_ENTRANCE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_93_GL_DINGPOT, ASSET_150F_MODEL_CS_KLUNGOS_LAB_OPA, ASSET_1513_MODEL_CS_KLUNGOS_LAB_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_90_GL_BATTLEMENTS, ASSET_14FC_MODEL_GL_BATTLEMENTS_OPA, ASSET_1515_MODEL_GL_BATTLEMENTS_XLU, { 6, 2, 7}, { -6, -3, -5}, 1.0f}, + {MAP_7B_CS_INTRO_GL_DINGPOT_1, ASSET_150F_MODEL_CS_KLUNGOS_LAB_OPA, 0, { 0, 0, 0}, { 0, -1, 0}, 1.6666666f}, + {MAP_7C_CS_INTRO_BANJOS_HOUSE_1, ASSET_14A2_MODEL_CS_BANJOS_HOUSE_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.6666666f}, + {MAP_7D_CS_SPIRAL_MOUNTAIN_1, ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA, ASSET_14D0_MODEL_SM_SPIRAL_MOUNTAIN_XLU, { 0, 0, 2}, { 0, -4, -2}, 1.0f}, + {MAP_7E_CS_SPIRAL_MOUNTAIN_2, ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA, ASSET_14D0_MODEL_SM_SPIRAL_MOUNTAIN_XLU, { 0, 0, 2}, { 0, -4, -2}, 1.0f}, + {MAP_81_CS_INTRO_GL_DINGPOT_2, ASSET_150F_MODEL_CS_KLUNGOS_LAB_OPA, 0, { 0, 0, 0}, { 0, -1, 0}, 1.6666666f}, + {MAP_82_CS_ENTERING_GL_MACHINE_ROOM, ASSET_150F_MODEL_CS_KLUNGOS_LAB_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_83_CS_GAME_OVER_MACHINE_ROOM, ASSET_150F_MODEL_CS_KLUNGOS_LAB_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_84_CS_UNUSED_MACHINE_ROOM, ASSET_150F_MODEL_CS_KLUNGOS_LAB_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_85_CS_SPIRAL_MOUNTAIN_3, ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA, ASSET_14D0_MODEL_SM_SPIRAL_MOUNTAIN_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_86_CS_SPIRAL_MOUNTAIN_4, ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA, ASSET_14D0_MODEL_SM_SPIRAL_MOUNTAIN_XLU, { 0, 0, 0}, { 0, -4, 0}, 1.0f}, + {MAP_87_CS_SPIRAL_MOUNTAIN_5, ASSET_14A6_MODEL_CS_INTRO_SPIRAL_MOUNTAIN_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_88_CS_SPIRAL_MOUNTAIN_6, ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA, ASSET_14D0_MODEL_SM_SPIRAL_MOUNTAIN_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_94_CS_INTRO_SPIRAL_7, ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA, ASSET_14D0_MODEL_SM_SPIRAL_MOUNTAIN_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_98_CS_END_SPIRAL_MOUNTAIN_1, ASSET_149F_MODEL_CS_END_SPIRAL_MOUNTAIN_OPA, ASSET_14A3_MODEL_CS_END_SPIRAL_MOUNTAIN_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_99_CS_END_SPIRAL_MOUNTAIN_2, ASSET_149F_MODEL_CS_END_SPIRAL_MOUNTAIN_OPA, ASSET_14A3_MODEL_CS_END_SPIRAL_MOUNTAIN_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_95_CS_END_ALL_100, ASSET_14A9_MODEL_CS_BEACH_OPA, ASSET_14A5_MODEL_CS_BEACH_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_89_CS_INTRO_BANJOS_HOUSE_2, ASSET_14A2_MODEL_CS_BANJOS_HOUSE_OPA, ASSET_14A4_MODEL_CS_BANJOS_HOUSE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.6666666f}, + {MAP_8A_CS_INTRO_BANJOS_HOUSE_3, ASSET_14A2_MODEL_CS_BANJOS_HOUSE_OPA, ASSET_14A4_MODEL_CS_BANJOS_HOUSE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.6666666f}, + {MAP_96_CS_END_BEACH_1, ASSET_14A9_MODEL_CS_BEACH_OPA, ASSET_14A5_MODEL_CS_BEACH_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_97_CS_END_BEACH_2, ASSET_14A9_MODEL_CS_BEACH_OPA, ASSET_14A5_MODEL_CS_BEACH_XLU, { 2, 0, -3}, { 4, 0, -1}, 1.0f}, + {MAP_91_FILE_SELECT, ASSET_14A2_MODEL_CS_BANJOS_HOUSE_OPA, ASSET_14A4_MODEL_CS_BANJOS_HOUSE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.6666666f}, + {MAP_8C_SM_BANJOS_HOUSE, ASSET_14A2_MODEL_CS_BANJOS_HOUSE_OPA, ASSET_14A4_MODEL_CS_BANJOS_HOUSE_XLU, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, + {MAP_8E_GL_FURNACE_FUN, ASSET_14E8_MODEL_GL_FURNACE_FUN_OPA, 0, { 0, 0, 0}, { 0, 0, 0}, 1.0f}, 0 }; @@ -238,7 +238,7 @@ void mapModel_opa_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx) { s32 temp_a0; if (func_80320708() && levelSpecificFlags_validateCRC2() && func_80320248()) { - if (mapModel_getOpaModelId() == ASSET_14CF_MODEL_SM_OPA) { + if (mapModel_getOpaModelId() == ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA) { func_8033A45C(1, 0); func_8033A45C(2, 1); } diff --git a/src/core2/spawnqueue.c b/src/core2/spawnqueue.c index aa345beb..bf07b860 100644 --- a/src/core2/spawnqueue.c +++ b/src/core2/spawnqueue.c @@ -25,7 +25,7 @@ extern ActorInfo chBubble; extern ActorInfo D_80366090; //bigbutt extern ActorInfo D_803660B4; //brownbull extern ActorInfo D_803662A8; //jiggy -extern ActorInfo D_80366300; //jigdance +extern ActorInfo chJigsawDance; //jigdance extern ActorInfo D_80366340; extern ActorInfo D_80366364; extern ActorInfo D_80366388; @@ -36,7 +36,7 @@ extern ActorInfo chExtraLife; //extralife extern ActorInfo D_80366C50; //music_note extern ActorInfo D_80366C80; //chhoneycarrier extern ActorInfo D_80366CA4; //chhoney -extern ActorInfo D_80366EC0; +extern ActorInfo chTrainers; extern ActorInfo D_80366EF0; //large_shadow extern ActorInfo D_80366F20; //chshockjump extern ActorInfo D_80366F44; //flight_pad @@ -46,11 +46,11 @@ extern ActorInfo D_80367100; //mutie_snippet extern ActorInfo D_80367130; //buzzbomb extern ActorInfo D_80367160; extern ActorInfo D_80367184; -extern ActorInfo D_80367200; //jingo_blue -extern ActorInfo D_80367224; //jingo_green -extern ActorInfo D_80367248; //jingo_yellow -extern ActorInfo D_8036726C; //jingo_pink -extern ActorInfo D_80367290; //jingo_orange +extern ActorInfo chJinjoBlue; //jingo_blue +extern ActorInfo chJinjoGreen; //jingo_green +extern ActorInfo chJinjoYellow; //jingo_yellow +extern ActorInfo chJinjoPink; //jingo_pink +extern ActorInfo chJinjoOrange; //jingo_orange extern ActorInfo D_803672E0; //chbeehive extern ActorInfo D_80367310; //chswarm extern ActorInfo D_80367390; //chwaterfallfx @@ -147,7 +147,7 @@ extern ActorInfo D_80372D78; //limbo extern ActorInfo D_80372DF8; //grublin_hood extern ActorInfo D_80372E78; //mummum extern ActorInfo D_80372EE0; -extern ActorInfo D_80372F50; //ticker +extern ActorInfo chTermite; //ticker extern ActorInfo D_80372FC0; extern ActorInfo D_80372FE4; extern ActorInfo D_803730D8; //nibbly @@ -219,13 +219,13 @@ void spawnQueue_reset(void){ spawnableActorList_add(&D_803672E0, actor_new, 0x2000108); spawnableActorList_add(&D_80367310, actor_new, 0x0020001); spawnableActorList_add(&D_80367390, actor_new, 0x0080084); - spawnableActorList_add(&D_80367248, actor_new, 0x0000140); - spawnableActorList_add(&D_80367290, actor_new, 0x0000140); - spawnableActorList_add(&D_80367200, actor_new, 0x0000140); - spawnableActorList_add(&D_8036726C, actor_new, 0x0000140); - spawnableActorList_add(&D_80367224, actor_new, 0x0000140); + spawnableActorList_add(&chJinjoYellow, actor_new, 0x0000140); + spawnableActorList_add(&chJinjoOrange, actor_new, 0x0000140); + spawnableActorList_add(&chJinjoBlue, actor_new, 0x0000140); + spawnableActorList_add(&chJinjoPink, actor_new, 0x0000140); + spawnableActorList_add(&chJinjoGreen, actor_new, 0x0000140); spawnableActorList_add(&D_803662A8, actor_new, 0x02000C0); - spawnableActorList_add(&D_80366300, actor_new, 0x0000004); + spawnableActorList_add(&chJigsawDance, actor_new, 0x0000004); spawnableActorList_add(&D_80367C60, actor_new, 0x0000004); spawnableActorList_add(&D_80367A20, actor_new, 0x0000000); spawnableActorList_add(&D_80366C80, actor_new, 0x0200040); //chhoneycarrier @@ -241,7 +241,7 @@ void spawnQueue_reset(void){ spawnableActorList_add(&D_80367AB0, func_802D7558, 0x0000004); spawnableActorList_add(&D_80367AD4, func_802D75B4, 0x0000004); spawnableActorList_add(&D_80367AF8, func_802D7610, 0x0000004); - spawnableActorList_add(&D_80366EC0, actor_new, 0x0000000); + spawnableActorList_add(&chTrainers, actor_new, 0x0000000); spawnableActorList_add(&D_80365F60, actor_new, 0x0000004); spawnableActorList_add(&D_80365F84, actor_new, 0x0000004); //turbotrainers spawnableActorList_add(&D_80367184, actor_new, 0x0000000); @@ -331,7 +331,7 @@ void spawnQueue_reset(void){ spawnableActorList_add(&D_80373134, actor_new, 0x880); spawnableActorList_add(&D_80373158, actor_new, 0x880); spawnableActorList_add(&D_80372EE0, actor_new, 0x2000141); - spawnableActorList_addIfMapVisited(&D_80372F50, actor_new, 0x2010101, MAP_2_MM_MUMBOS_MOUNTAIN); //ticker + spawnableActorList_addIfMapVisited(&chTermite, actor_new, 0x2010101, MAP_2_MM_MUMBOS_MOUNTAIN); //ticker spawnableActorList_addIfMapVisited(&D_80372C80, actor_new, 0x2010981, MAP_31_RBB_RUSTY_BUCKET_BAY); //floatsam spawnableActorList_addIfMapVisited(&D_80372C18, actor_new, 0x211A9, MAP_1B_MMM_MAD_MONSTER_MANSION); //teehee spawnableActorList_addIfMapVisited(&D_80372FC0, actor_new, 0x2010001, MAP_1B_MMM_MAD_MONSTER_MANSION); diff --git a/src/core2/statetimer.c b/src/core2/statetimer.c new file mode 100644 index 00000000..90836bd9 --- /dev/null +++ b/src/core2/statetimer.c @@ -0,0 +1,64 @@ +#include "core2/statetimer.h" +extern f32 time_getDelta(void); + +typedef struct{ + f32 now; + f32 previous; +}StateTimer; + +/* .bss */ +StateTimer stateTimerList[8]; + +/* .code */ +f32 stateTimer_get(enum state_timer_e timer_id){ + return stateTimerList[timer_id].now; +} + +f32 stateTimer_getPrevious(enum state_timer_e timer_id){ + return stateTimerList[timer_id].previous; +} + +bool stateTimer_isActive(enum state_timer_e timer_id){ + return stateTimerList[timer_id].now != 0.0f; +} + +bool stateTimer_isDone(enum state_timer_e timer_id){ + return stateTimerList[timer_id].now == 0.0f; +} + +bool stateTimer_isAt(enum state_timer_e timer_id, f32 value){ + return (stateTimerList[timer_id].now < value) && (value <= stateTimerList[timer_id].previous); +} + +void stateTimer_free(void){} + +void stateTimer_init(void){ + int i; + for(i = 0; i < 7; i++){ + stateTimerList[i].now = 0.0f; + stateTimerList[i].previous = 0.0f; + } +} + +void stateTimer_clear(enum state_timer_e timer_id){ + stateTimer_set(timer_id, 0.0f); +} + +void stateTimer_set(enum state_timer_e timer_id, f32 arg1){ + stateTimerList[timer_id].now = arg1; + stateTimerList[timer_id].previous = arg1; +} + +void stateTimer_update(void){ + int i; + f32 delta = time_getDelta(); + for(i = 0; i < 7; i++){ + stateTimerList[i].previous = stateTimerList[i].now; + if(0.0f != stateTimerList[i].previous){ + stateTimerList[i].now -= delta; + if(stateTimerList[i].now < 0.0f){ + stateTimerList[i].now = 0.0f; + } + } + } +} diff --git a/src/lair/code_86F0.c b/src/lair/code_86F0.c index f1c789f2..2fdf494d 100644 --- a/src/lair/code_86F0.c +++ b/src/lair/code_86F0.c @@ -537,7 +537,7 @@ void lair_func_8038F924(Actor *this) { player_getPosition(sp44); if (ml_distanceSquared_vec3f(sp44, this->position) < 250000.0f) { if (!this->unk38_0) { - func_802FA5D0(); + itemPrint_reset(); this->unk38_0 = TRUE; } func_802FACA4(0x2B);