papermario/src/code_759b0_len_61b0.c

190 lines
5.3 KiB
C
Raw Normal View History

2020-08-04 08:49:11 +02:00
#include "common.h"
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DC500);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DC778);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DCB7C);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DCE70);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DD04C);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DD228);
2020-09-24 05:16:13 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DD44C);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DD5B4);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DD618);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DD8FC);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DDAE4);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DDC44);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DDCEC);
2020-09-24 05:16:13 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DDD94);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", test_below_player);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DE46C);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", trace_below_player);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", collision_check_above);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", trace_above_player);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", do_lateral_collision);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DEE5C);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DF15C);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DF3FC);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", test_player_lateral);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", update_player);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", check_input_use_partner);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DFAAC);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DFBE8);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
void clear_player_status(void) {
mem_clear(&gPlayerStatus, sizeof(gPlayerStatus));
}
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DFC74);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DFCF4);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DFD48);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DFEFC);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DFF50);
2020-09-24 05:16:13 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DFF78);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800DFFCC);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0088);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
void enable_player_shadow(void) {
get_shadow_by_index(D_8010F094)->flags &= ~1;
}
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
void disable_player_shadow(void) {
get_shadow_by_index(D_8010F094)->flags |= 1;
}
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
s32 disable_player_static_collisions(void) {
PlayerStatus* playerStatus = &gPlayerStatus;
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
playerStatus->flags |= 0x1000;
playerStatus->enableCollisionOverlapsCheck++;
return playerStatus->enableCollisionOverlapsCheck;
}
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
s32 enable_player_static_collisions(void) {
PlayerStatus* playerStatus = &gPlayerStatus;
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
playerStatus->enableCollisionOverlapsCheck--;
if (playerStatus->enableCollisionOverlapsCheck == 0) {
playerStatus->flags &= ~0x1000;
}
return playerStatus->enableCollisionOverlapsCheck;
}
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
s32 disable_player_input(void) {
PlayerStatus* playerStatus = &gPlayerStatus;
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
playerStatus->flags |= 0x2000;
playerStatus->statusMenuCounterinputEnabledCounter++;
return playerStatus->statusMenuCounterinputEnabledCounter;
}
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
s32 enable_player_input(void) {
PlayerStatus* playerStatus = &gPlayerStatus;
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
playerStatus->statusMenuCounterinputEnabledCounter--;
if (playerStatus->statusMenuCounterinputEnabledCounter == 0) {
playerStatus->flags &= ~0x2000;
}
return playerStatus->statusMenuCounterinputEnabledCounter;
}
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E01DC);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0208);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0260);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0294);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0330);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0374);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0398);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E04D0);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0514);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0538);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0580);
2020-09-24 05:16:13 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0658);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E069C);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E06C0);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E06D8);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0818);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0AD0);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0B14);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0B38);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0B90);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E0FEC);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
void render_player(void) {
if (!GAME_STATUS->disableScripts) {
render_player_model();
}
}
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(void, "code_759b0_len_61b0", render_player_model);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", appendGfx_player);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", appendGfx_player_spin);
2020-09-24 05:16:13 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", update_player_shadow);
2020-09-24 05:16:13 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", update_player_input);
2020-08-04 08:49:11 +02:00
2020-09-25 23:18:09 +02:00
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E205C);
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E22E4);
INCLUDE_ASM(s32, "code_759b0_len_61b0", input_to_move_vector);
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E23FC);
INCLUDE_ASM(s32, "code_759b0_len_61b0", func_800E24F8);