Merge branch 'mr-origin-91'

This commit is contained in:
banjo.decomp
2024-10-08 02:13:18 -05:00
25 changed files with 289 additions and 199 deletions

View File

@@ -13,11 +13,11 @@
#define SPRITE_TYPE_RGBA16 (1 << 10) ////0x400
#define SPRITE_TYPE_RGBA32 (1 << 11)
enum file_progress_e{
FILEPROG_0_UNKNOWN,
FILEPROG_1_UNKNOWN,
FILEPROG_2_UNKNOWN,
FILEPROG_3_MUSIC_NOTE_TEXT,
enum file_progress_e {
FILEPROG_0_TIPTUP_MINIGAME_PROGRESS,
// unused
// unused
FILEPROG_3_MUSIC_NOTE_TEXT = 0x03,
FILEPROG_4_MUMBO_TOKEN_TEXT,
FILEPROG_5_BLUE_EGG_TEXT,
FILEPROG_6_RED_FEATHER_TEXT,
@@ -79,17 +79,17 @@ enum file_progress_e{
FILEPROG_46_CCW_WITCH_SWITCH_JIGGY_PRESSED,
FILEPROG_47_FP_WITCH_SWITCH_JIGGY_PRESSED,
FILEPROG_48_FP_WITCH_SWITCH_ADVENT_DOOR_OPEN,
// {index=0x49, type="Prog", level=6, name="Pink Cauldron 1 Active"},
// {index=0x4A, type="Prog", level=6, name="Pink Cauldron 2 Active"},
// {index=0x4B, type="Prog", level=6, name="Green Cauldron 1 Active"},
// {index=0x4C, type="Prog", level=6, name="Green Cauldron 2 Active"},
// {index=0x4D, type="Prog", level=6, name="Red Cauldron 1 Active"},
// {index=0x4E, type="Prog", level=6, name="Red Cauldron 2 Active"},
// -- 0x4F - Unused Cauldron Pair?
// -- 0x50 - Unused Cauldron Pair?
// {index=0x51, type="Prog", level=6, name="Yellow Cauldron 1 Active"},
// {index=0x52, type="Prog", level=6, name="Yellow Cauldron 2 Active"},
FILEPROG_53_CCW_PUZZLE_PODIUM_SWITCH_PRESSED = 0x53,
FILEPROG_49_PINK_CAULDRON_1_ACTIVE,
FILEPROG_4A_PINK_CAULDRON_2_ACTIVE,
FILEPROG_4B_GREEN_CAULDRON_1_ACTIVE,
FILEPROG_4C_GREEN_CAULDRON_2_ACTIVE,
FILEPROG_4D_RED_CAULDRON_1_ACTIVE,
FILEPROG_4E_RED_CAULDRON_2_ACTIVE,
FILEPROG_4F_UNUSED_CAULDRON_1_ACTIVE,
FILEPROG_50_UNUSED_CAULDRON_2_ACTIVE,
FILEPROG_51_YELLOW_CAULDRON_1_ACTIVE,
FILEPROG_52_YELLOW_CAULDRON_2_ACTIVE,
FILEPROG_53_CCW_PUZZLE_PODIUM_SWITCH_PRESSED,
FILEPROG_54_CCW_PUZZLE_PODIUM_ACTIVE,
FILEPROG_55_FF_BK_SQUARE_INSTRUCTIONS,
FILEPROG_56_FF_PICTURE_SQUARE_INSTRUCTIONS,
@@ -110,7 +110,6 @@ enum file_progress_e{
FILEPROG_76_CCW_PUZZLE_PIECES_PLACED = 0x76, //4 bit
FILEPROG_7A_DOG_PUZZLE_PIECES_PLACED = 0x7A, //5 bit
FILEPROG_7F_DOUBLE_HEALTH_PUZZLE_PIECES_PLACED = 0x7F, //3 bit
// {index=0x82, unknown}
FILEPROG_82_MET_TWINKLIES = 0x82,
FILEPROG_83_MAGIC_GET_WEAK_TEXT,
FILEPROG_84_MAGIC_ALL_GONE_TEXT,
@@ -130,8 +129,8 @@ enum file_progress_e{
FILEPROG_92_PAID_WALRUS_COST,
FILEPROG_93_PAID_CROC_COST,
FILEPROG_94_PAID_BEE_COST,
FILEPROG_96_MET_BRENTILDA = 0x96,
FILEPROG_95_UNKNOWN,
FILEPROG_96_MET_BRENTILDA,
FILEPROG_97_ENTERED_LAIR_TEXT,
FILEPROG_98_EXITED_LEVEL_TEXT,
FILEPROG_99_PAST_50_NOTE_DOOR_TEXT,
@@ -201,8 +200,8 @@ enum file_progress_e{
FILEPROG_DE_USED_ALL_YOUR_PUZZLE_PIECES,
FILEPROG_DF_CAN_REMOVE_ALL_PUZZLE_PIECES,
FILEPROG_E0_CAN_PLACE_ALL_PUZZLE_PIECES,
FILEPROG_E2_DOOR_OF_GRUNTY_OPEN = 0xE2,
FILEPROG_E1_UNKNOWN, // is set in cutscene_skipGameOverCutsceneCheck
FILEPROG_E2_DOOR_OF_GRUNTY_OPEN,
FILEPROG_E3_CCW_FLOWER_SPRING,
FILEPROG_E4_CCW_FLOWER_SUMMER,
FILEPROG_E5_CCW_FLOWER_AUTUMN,
@@ -225,10 +224,49 @@ enum file_progress_e{
FILEPROG_F6_SEEN_DOOR_OF_GRUNTY_PUZZLE_PODIUM,
FILEPROG_F7_HAS_TRANSFORMED_IN_CRYPT,
FILEPROG_F8_KING_SANDYBUTT_PYRAMID_STATE = 0xF8, //2bit
// FILEPROG_F8_KING_SANDYBUTT_PYRAMID_STATE = 0xF9, //2bit
FILEPROG_FA_UNKNOWN = 0xFA, // Something that's set in FF
FILEPROG_FC_DEFEAT_GRUNTY = 0xFC,
FILEPROG_FD_BANNED_CHEATCODES_ENTERED //2 bit
FILEPROG_FD_BANNED_CHEATCODES_ENTERED, //2 bit
FILEPROG_FF_SANDCASTLE_OPEN_DOOR_TWO = 0xFF,
FILEPROG_100_SANDCASTLE_OPEN_DOOR_THREE,
FILEPROG_101_SANDCASTLE_OPEN_DOOR_FOUR,
FILEPROG_102_SANDCASTLE_OPEN_DOOR_FIVE,
FILEPROG_103_SANDCASTLE_OPEN_DOOR_SIX,
FILEPROG_104_SANDCASTLE_OPEN_DOOR_SEVEN,
FILEPROG_105_SANDCASTLE_PUZZLE_COMPLETE_CC,
FILEPROG_106_SANDCASTLE_PUZZLE_COMPLETE_BGS,
FILEPROG_107_SANDCASTLE_PUZZLE_COMPLETE_FP,
FILEPROG_108_SANDCASTLE_PUZZLE_COMPLETE_GV,
FILEPROG_109_SANDCASTLE_PUZZLE_COMPLETE_MMM,
FILEPROG_10A_SANDCASTLE_PUZZLE_COMPLETE_RBB,
FILEPROG_10B_SANDCASTLE_PUZZLE_COMPLETE_CCC,
FILEPROG_10C_SANDCASTLE_RAISE_PIPES_TO_CC,
FILEPROG_10D_SANDCASTLE_RAISE_PIPE_TO_BRENTILDA,
FILEPROG_10E_SANDCASTLE_OPEN_CC,
FILEPROG_10F_SANDCASTLE_REMOVE_GRILL_NEAR_BGS_JIGGY,
FILEPROG_110_SANDCASTLE_CCC_JIGGY_PODIUM,
FILEPROG_111_SANDCASTLE_REMOVE_GRILL_AND_HAT_FROM_STATUE,
FILEPROG_112_SANDCASTLE_REMOVE_ICE,
FILEPROG_113_SANDCASTLE_OPEN_BGS,
FILEPROG_114_SANDCASTLE_REMOVE_BREAKABLE_WALLS,
FILEPROG_115_SANDCASTLE_SHOCKSPRING_JUMP_UNLOCKED,
FILEPROG_116_SANDCASTLE_OPEN_GV,
FILEPROG_117_SANDCASTLE_REMOVE_WEBS,
FILEPROG_118_SANDCASTLE_REMOVE_GLASS_EYE,
FILEPROG_119_SANDCASTLE_FLIGHT_UNLOCKED,
FILEPROG_11A_SANDCASTLE_OPEN_FP,
FILEPROG_11B_SANDCASTLE_OPEN_MMM,
FILEPROG_11C_SANDCASTLE_REMOVE_CRYPT_GATE,
FILEPROG_11D_SANDCASTLE_REMOVE_CRYPT_COFFIN_LID,
FILEPROG_11E_SANDCASTLE_REMOVE_GRATE_NEAR_WATER_SWITCH,
FILEPROG_11F_SANDCASTLE_OPEN_RBB,
FILEPROG_120_SANDCASTLE_REMOVE_GRILL_NEAR_RBB_JIGGY,
FILEPROG_121_SANDCASTLE_REMOVE_TUNNEL_GRILL_NEAR_RBB_JIGGY,
FILEPROG_122_SANDCASTLE_OPEN_CCW,
FILEPROG_123_CHEAT_ENTERED
};
enum volatile_flags_e {
@@ -2865,14 +2903,21 @@ enum asset_e
ASSET_1E0_ANIM_BEE_OW = 0x1e0,
ASSET_1E1_ANIM_BEE_DIE,
ASSET_1E2_ANIM_BEE_JUMP,
ASSET_1E3_ANIM_UNKNOWN,
ASSET_1ED_ANIM_GRAVESTONE_OW = 0x1ED,
ASSET_1EE_ANIM_GRAVESTONE_DIE,
ASSET_1F4_ANIM_SHRAPNEL_IDLE = 0x1F4,
ASSET_1F0_ANIM_UNKNOWN = 0x1F0,
ASSET_1F1_ANIM_UNKNOWN,
ASSET_1F2_ANIM_UNKNOWN,
ASSET_1F3_ANIM_UNKNOWN,
ASSET_1F4_ANIM_SHRAPNEL_IDLE,
ASSET_1F5_ANIM_TRANSITION_FALLING_JIGGIES,
ASSET_217_ANIM_UNKNOWN = 0x217,
ASSET_220_ANIM_SIR_SLUSH_DIE = 0x220,
ASSET_221_ANIM_WOZZA_IN_CAVE,
@@ -4177,8 +4222,8 @@ enum asset_e
ASSET_ADA_TEXT_UNKNOWN = 0xada,
ASSET_ADB_TEXT_UNKNOWN,
ASSET_ADD_TEXT_UNKNOWN = 0xadd,
ASSET_ADC_DIALOG_UNKNOWN,
ASSET_ADD_TEXT_UNKNOWN,
ASSET_ADE_TEXT_LOGGO_AS_BEAR,
ASSET_ADF_TEXT_ENTER_LOGGO,
ASSET_AE0_TEXT_EXIT_LOGGO,
@@ -4397,6 +4442,8 @@ enum asset_e
ASSET_F64_DIALOG_NOTEDOORS_LEARN = 0xf64,
ASSET_F65_DIALOG_NOTEDOORS_REFRESHER,
ASSET_F66_DIALOG_UNKNOWN,
ASSET_F67_DIALOG_UNKNOWN,
ASSET_F79_TEXT_UNKNOWN = 0xf79,
ASSET_F7A_TEXT_UNKNOWN,

View File

@@ -391,7 +391,7 @@ void func_8030EBC8(enum sfx_e uid, f32 arg1, f32 arg2, s32 arg3, s32 arg4);
void func_8030EC20(enum sfx_e uid, f32 arg1, f32 arg2, u32 arg3, u32 arg4);
u8 func_8030ED2C(enum sfx_e uid, s32 arg1);
void fileProgressFlag_setN(s32, s32, s32);
void fileProgressFlag_setN(enum file_progress_e, s32, s32);
Actor *marker_getActorAndRotation(ActorMarker *marker, f32 rotation[3]);
Actor *func_80325934(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
Actor *actor_drawFullDepth(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx);
@@ -535,11 +535,11 @@ extern void marker_setActorUpdateFunc(ActorMarker *marker, ActorUpdateFunc metho
extern void marker_setActorUpdate2Func(ActorMarker *marker, ActorUpdateFunc method);
extern void marker_callCollisionFunc(ActorMarker *, ActorMarker *, enum marker_collision_func_type_e);
extern enum marker_collision_func_type_e func_8033D574(struct5Cs *arg0);
extern s32 volatileFlag_get(s32);
extern s32 volatileFlag_getN(s32 index, s32 numBits);
extern s32 volatileFlag_getAndSet(s32 index, s32 arg1);
extern void volatileFlag_set(s32 index, s32 set);
extern void volatileFlag_setN(s32 startIndex, s32 set, s32 length);
extern s32 volatileFlag_get(enum volatile_flags_e);
extern s32 volatileFlag_getN(enum volatile_flags_e index, s32 numBits);
extern s32 volatileFlag_getAndSet(enum volatile_flags_e index, s32 arg1);
extern void volatileFlag_set(enum volatile_flags_e index, s32 set);
extern void volatileFlag_setN(enum volatile_flags_e startIndex, s32 set, s32 length);
extern void itemscore_noteScores_clear(void);
extern s32 itemscore_noteScores_get(enum level_e lvl_id);

View File

@@ -165,7 +165,7 @@ typedef struct actor_s{
u32 is_bundle:1;
AnimCtrl *animctrl;
ActorAnimationInfo *unk18;
TUPLE(f32, unk1C); // actor position?
TUPLE(f32, unk1C); // actor position? // used as "home" for chbat
f32 actor_specific_1_f; //used in cheggs
TUPLE(f32, velocity);
u32 unk38_31:10; // hit count for jinjo base in fight
@@ -230,7 +230,9 @@ typedef struct actor_s{
u32 unkF4_22:1;
u32 initialized:1; //unkF4_21;
u32 unkF4_20:12;
u32 unkF4_8:9; // jinjo id in final fight
u32 unkF4_8:9; /* jinjo id in final fight.
* Is used to determine file progress related stuff, can also be a file_progress_e
*/
f32 stored_animctrl_subrangeMin; //animCtrl_SubRangeStart
f32 stored_animctrl_subrangeMax; //animCtrl_SubRangeEnd
ActorMarker *unk100; // child actor marker ?