museum fish progress, splitting out files

This commit is contained in:
roeming
2024-11-24 14:49:21 -05:00
parent 7df708e441
commit 967d792c6b
24 changed files with 1875 additions and 1388 deletions
+22 -1
View File
@@ -822,7 +822,28 @@ actor/ac_museum_picture.c:
.bss start:0x000A16B0 end:0x000A16C0
actor/ac_museum_fish.c:
.text start:0x000BF554 end:0x000E9F58
.text start:0x000BF554 end:0x000C1428
.text start:0x000C1428 end:0x000C869C
.text start:0x000C869C end:0x000CA20C
.text start:0x000CA20C end:0x000CC160
.text start:0x000CC160 end:0x000CF450
.text start:0x000CF450 end:0x000D0D24
.text start:0x000D0D24 end:0x000D3110
.text start:0x000D3110 end:0x000D46C8
.text start:0x000D46C8 end:0x000D6128
.text start:0x000D6128 end:0x000D7650
.text start:0x000D7650 end:0x000D8EAC
.text start:0x000D8EAC end:0x000DA238
.text start:0x000DA238 end:0x000DC1B8
.text start:0x000DC1B8 end:0x000DD860
.text start:0x000DD860 end:0x000DE3AC
.text start:0x000DE3AC end:0x000DFE04
.text start:0x000DFE04 end:0x000E0DF4
.text start:0x000E0DF4 end:0x000E39E4
.text start:0x000E39E4 end:0x000E5DD8
.text start:0x000E5DD8 end:0x000E7788
.text start:0x000E7788 end:0x000E8F9C
.text start:0x000E8F9C end:0x000E9F58
.rodata start:0x000030D0 end:0x00003410
.data start:0x00037A58 end:0x00038F08
.bss start:0x000A16C0 end:0x000A16D8
+62 -42
View File
@@ -54,9 +54,8 @@ typedef struct _FISH_PRIVATE_DATA {
void* _590;
s32 _59C; // fish num
xyz_t _5A0;
f32 _5AC;
f32 _5B0;
f32 _5B4;
xyz_t _5AC;
xyz_t _5B8;
f32 _5D0;
f32 _5D4;
f32 _5D8;
@@ -67,21 +66,26 @@ typedef struct _FISH_PRIVATE_DATA {
f32 _5F4;
s_xz _60C;
s_xz _612;
s16 _61A;
s16 _61C;
s16 _622;
s16 _624;
s16 _626;
s16 _628;
s16 _62A;
s16 _62C;
s16 _62E;
s16 _630;
s16 _632;
s16 _634;
s16 _636;
s16 _63E;
s16 _640;
} MUSEUM_FISH_PRIVATE_DATA;
typedef struct _MUSEUM_FISH_PRIVATE_DATA2 {
cKF_SkeletonInfo_R_c _00;
// Holds data for the underwater grass
typedef struct _MUSEUM_FISH_KUSA_DATA {
YET_SKELETON _00;
s_xyz _4F0;
s_xyz _514;
s16 _538;
@@ -90,7 +94,7 @@ typedef struct _MUSEUM_FISH_PRIVATE_DATA2 {
float _540;
float _548;
void* _54C;
} MUSEUM_FISH_PRIVATE_DATA2;
} MUSEUM_FISH_KUSA_DATA; // size 558
typedef struct _FISH_DISPLAY_MSG_INFO {
s16 fishName;
@@ -98,14 +102,14 @@ typedef struct _FISH_DISPLAY_MSG_INFO {
} FISH_DISPLAY_MSG_INFO;
typedef struct _MUSEUM_FISH_ACTOR {
ACTOR actor; // offset: 0, size: 0x174
MUSEUM_FISH_PRIVATE_DATA prvFish[40]; // offset: 0x264 size: 0x648 * 40
MUSEUM_FISH_PRIVATE_DATA2 prvFish2[14];
ACTOR actor; // offset: 0, size: 0x174
int _174;
MUSEUM_FISH_PRIVATE_DATA prvFish[40]; // offset: 0x178 size: 0xFB48
MUSEUM_FISH_KUSA_DATA prvKusa[14]; // offset: 0xFCB8 size: 0x4AD0
s16 _101f0;
s16 _101f4;
void* _14788;
xyz_t _14d08;
xyz_t _14d14;
xyz_t _14d08[2];
int numFishDisplayed; // offset: 0x14d20, size: 4
int fishDisplayMsgIter; // offset: 0x14d24, size: 4
FISH_DISPLAY_MSG_INFO fishDisplayMsgInfo[10]; // offset: 0x14d28, size: 4*10
@@ -113,15 +117,14 @@ typedef struct _MUSEUM_FISH_ACTOR {
s16 _14d50[0x10];
s16 _14d78[0x10];
s16 _14db4;
s16 _14db6; // offset: 0x14db6, size: 2
s16 _14db8; // offset: 0x14db8, size: 2
s16 _14dba; // offset: 0x14dba, size: 2
s16 _14dbc; // offset: 0x14dbc, size: 2
s16 _14dbe; // offset: 0x14dbe, size: 2
s16 _14dc0; // offset: 0x14dc0, size: 2
s16 _14dc2; // offset: 0x14dc2, size: 2
s16 _14dc4; // offset: 0x14dc4, size: 2
s16 _14dc8; // offset: 0x14dc8, size: 2
s16 _14db6; // offset: 0x14db6, size: 2
s16 _14db8; // offset: 0x14db8, size: 2
s16 _14dba; // offset: 0x14dba, size: 2
s16 _14dbc[2]; // offset: 0x14dbc, size: 4
s16 _14dc0; // offset: 0x14dc0, size: 2
s16 _14dc2; // offset: 0x14dc2, size: 2
s16 _14dc4; // offset: 0x14dc4, size: 2
s16 _14dc8; // offset: 0x14dc8, size: 2
} MUSEUM_FISH_ACTOR;
void Museum_Fish_Prv_data_init(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game, int fishNum, int r6);
@@ -133,12 +136,12 @@ void Museum_Fish_Set_MsgFishInfo();
void Museum_Fish_set_talk_info();
void Museum_Fish_Talk_process();
void Museum_Fish_Actor_move(ACTOR* actor, GAME* game);
void Museum_Fish_Suisou_draw(MUSEUM_FISH_ACTOR* actor, GAME* game, int r5);
void kusa_before_disp();
void Museum_Fish_Kusa_Draw(ACTOR* actor, GAME* game);
void Museum_Fish_Suisou_draw(ACTOR* actor, GAME* game, int r5);
int kusa_before_disp(GAME* r3, cKF_SkeletonInfo_R_c* r4, int r5, Gfx** r6, u8* r7, void* arg, s_xyz* r9, xyz_t* r10);
void Museum_Fish_Kusa_Draw(ACTOR* actor, GAME* game, int r5);
void Museum_Fish_Actor_draw(ACTOR* actor, GAME* game);
BOOL mfish_cull_check(GAME* game, xyz_t* worldPos, f32 x, f32 y, f32 _y);
void mfish_point_ligh_pos_get();
void mfish_point_ligh_pos_get(ACTOR* actorx, GAME* game, int r5);
void mfish_point_light_ct(ACTOR* actor, GAME* game);
void mfish_point_light_dt(ACTOR* r30, GAME* r31);
void mfish_point_light_mv(ACTOR* actor, GAME* game);
@@ -148,7 +151,7 @@ f32 Rnd_EX_f(f32 v1);
f32 Rnd_EX_fx(f32 v1);
void mfish_base_FishMove();
int mfish_PosWallCheck(MUSEUM_FISH_PRIVATE_DATA* priv, xyz_t* pos);
void mfish_WallCheck();
BOOL mfish_WallCheck(MUSEUM_FISH_PRIVATE_DATA* priv);
s16 mfish_get_hide_camera_angle(MUSEUM_FISH_PRIVATE_DATA* priv);
void mfish_dummy_process_init();
void mfish_dummy_process();
@@ -209,7 +212,8 @@ void mfish_aroana_long_move_process();
void mfish_aroana_base_FishMove();
void mfish_aroana_base_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_aroana_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_aroana_before_disp();
void mfish_aroana_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_aroana_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_koi_tail_anim_set();
void mfish_koi_move_smooth();
@@ -227,14 +231,16 @@ void mfish_koi_long_move_process();
void mfish_koi_base_FishMove();
void mfish_koi_base_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_koi_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_koi_before_disp();
void mfish_koi_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_koi_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kaseki_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kaseki_normal_init();
void mfish_kaseki_normal();
void mfish_kaseki_move_wall_smooth();
void mfish_kaseki_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kaseki_before_disp();
void mfish_kaseki_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_kaseki_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_bass_tail_anim_set();
void mfish_bass_base_FishMove();
@@ -253,7 +259,8 @@ void mfish_seafish_normal();
void mfish_seafish_turn_init();
void mfish_seafish_turn();
void mfish_seafish_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_seafish_before_disp();
void mfish_seafish_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_seafish_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_tai_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_tai_normal_init();
@@ -261,7 +268,8 @@ void mfish_tai_normal();
void mfish_tai_turn_init();
void mfish_tai_turn();
void mfish_tai_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_tai_before_disp();
void mfish_tai_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_tai_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_small_fish_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_sfish_normal_init();
@@ -269,7 +277,8 @@ void mfish_sfish_normal();
void mfish_sfish_turn_init();
void mfish_sfish_turn();
void mfish_small_fish_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_sfish_before_disp();
void mfish_sfish_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_small_fish_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_gupi_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_gupi_normal_init();
@@ -277,7 +286,8 @@ void mfish_gupi_normal();
void mfish_gupi_turn_init();
void mfish_gupi_turn();
void mfish_gupi_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_gupi_before_disp();
void mfish_gupi_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_gupi_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_medaka_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_medaka_normal_init();
@@ -285,7 +295,8 @@ void mfish_medaka_normal();
void mfish_medaka_turn_init();
void mfish_medaka_turn();
void mfish_medaka_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_medaka_before_disp();
void mfish_medaka_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_medaka_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kingyo_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kingyo_normal_init();
@@ -295,7 +306,8 @@ void mfish_kingyo_turn();
void mfish_kingyo_peck_init();
void mfish_kingyo_peck();
void mfish_kingyo_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kingyo_before_disp();
void mfish_kingyo_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_kingyo_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_dojou_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_dojou_normal_init();
@@ -303,19 +315,23 @@ void mfish_dojou_normal();
void mfish_dojou_turn_init();
void mfish_dojou_turn();
void mfish_dojou_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_dojou_before_disp();
void mfish_dojou_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_dojou_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_donko_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_donko_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_donko_before_disp();
void mfish_donko_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_donko_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_big_fish_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_big_fish_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_bfish_before_disp();
void mfish_bfish_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_big_fish_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_ito_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_ito_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_ito_before_disp();
void mfish_ito_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_ito_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_unagi_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_unagi_get_next_rail_type();
@@ -329,7 +345,8 @@ void mfish_unagi_rail_move_reverse();
void mfish_unagi_reverse_to_normal_init();
void mfish_unagi_reverse_to_normal();
void mfish_unagi_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_unagi_before_disp();
void mfish_unagi_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_unagi_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_namazu_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_namazu_body_wind_anime_play();
@@ -343,7 +360,8 @@ void mfish_namazu_ground_sweep_process_init();
void mfish_namazu_ground_sweep_process();
void mfish_namazu_base_FishMove();
void mfish_namazu_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_namazu_before_disp();
void mfish_namazu_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_namazu_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_zarigani_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_zarigani_normal_process_init();
@@ -355,7 +373,8 @@ void mfish_zarigani_stand_process();
void mfish_zarigani_jump_process_init();
void mfish_zarigani_jump_process();
void mfish_zarigani_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_zarigani_before_disp();
void mfish_zarigani_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans);
void mfish_zarigani_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kurage_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kurage_normal_init();
@@ -369,7 +388,8 @@ void mfish_hasu_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_hasu_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kaeru_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void mfish_kaeru_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
void hasu_before_disp();
void hasu_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f, void* arg,
s_xyz* joint1, xyz_t* trans);
void hasu_after_disp();
void mfish_kaeru_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game);
+278 -1345
View File
File diff suppressed because it is too large Load Diff
+49
View File
@@ -0,0 +1,49 @@
void mfish_afish_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_afish_dummy_process_init() {
return;
}
void mfish_afish_dummy_process() {
return;
}
void mfish_afish_normal_process_init() {
return;
}
void mfish_afish_normal_process() {
return;
}
void mfish_afish_turn_process_init() {
return;
}
void mfish_afish_turn_process() {
return;
}
void mfish_afish_base_FishMove() {
return;
}
void mfish_afish_base_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_afish_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_afish_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+64
View File
@@ -0,0 +1,64 @@
void mfish_aroana_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_aroana_dummy_process_init() {
return;
}
void mfish_aroana_dummy_process() {
return;
}
void mfish_aroana_normal_process_init() {
return;
}
void mfish_aroana_normal_process() {
return;
}
void mfish_aroana_turn_process_init() {
return;
}
void mfish_aroana_turn_process() {
return;
}
void mfish_aroana_long_move_process_init() {
return;
}
void mfish_aroana_long_move_process() {
return;
}
void mfish_aroana_base_FishMove() {
return;
}
void mfish_aroana_base_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_aroana_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_aroana_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_aroana_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+406
View File
@@ -0,0 +1,406 @@
f32 Rnd_EX_f(f32 v) {
f32 rand1 = 2 * fqrand2();
f32 rand2 = fqrand();
if (rand2 > (rand1 * rand1)) {
if (rand1 > 0) {
rand1 = sqrtf(rand2);
} else {
rand1 = -sqrtf(rand2);
}
}
rand1 = (1.0f + rand1) * 0.5f;
return v * rand1;
}
f32 Rnd_EX_fx(f32 v1) {
f32 rand1 = 2 * fqrand2();
f32 rand2 = fqrand();
if (rand2 > (rand1 * rand1)) {
if (rand1 > 0) {
rand1 = sqrtf(rand2);
} else {
rand1 = -sqrtf(rand2);
}
}
rand1 = rand1 / 2;
return v1 * rand1;
}
void mfish_base_FishMove(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game) {
GAME_PLAY* play = (GAME_PLAY*)game;
f32 t;
xyz_t pos;
if (actor->_59C == 0x18 && actor->_34 != mfish_peck_process) {
actor->_5E8 *= actor->init_data._18;
} else {
add_calc0(&actor->_5E8, 1.0f - actor->init_data._18, 0.025f);
}
actor->_5D0 = actor->_5E8 * sin_s(actor->_60C.z);
actor->_5D8 = actor->_5E8 * cos_s(actor->_60C.z);
add_calc(&actor->_5D4, MAX(ABS(actor->_5E8 * sin_s(actor->_60C.x)), 0.1f), 0.1f, 0.1f, 0.005f);
add_calc2(&actor->_5A0.y, actor->_5F4 + actor->init_data._0C, 0.1f, actor->_5D4);
mfish_move_smooth(actor, game);
mfish_get_flow_vec(&pos, actor, game);
actor->_5A0.y += actor->_5D0 + actor->_5DC.x;
actor->_5A0.z += actor->_5D0 + actor->_5DC.x;
actor->_5A0.y = actor->_5A0.y + actor->_5DC.y;
actor->_5A0.y = MAX(60, MIN(110, actor->_5A0.y));
}
int mfish_PosWallCheck(MUSEUM_FISH_PRIVATE_DATA* priv, xyz_t* pos) {
u32 flag = 0;
xyz_t p = suisou_pos[priv->_630];
f32 a, b, c, d;
if (priv->_630 < 4) {
a = priv->init_data._28 + 45;
b = priv->init_data._28 + 45;
c = priv->init_data._28 + 45;
d = priv->init_data._28 + 45;
} else {
a = priv->init_data._28 + 180;
b = priv->init_data._28 + 180;
c = priv->init_data._28 + 5;
d = priv->init_data._28 + 45;
}
if (pos->x > p.x + a) {
flag |= 4;
} else if (pos->x < p.x - b) {
flag |= 2;
}
if (pos->z > p.z + c) {
flag |= 8;
} else if (pos->z < p.z - d) {
flag |= 0x10;
}
return flag;
}
BOOL mfish_WallCheck(MUSEUM_FISH_PRIVATE_DATA* prv) {
xyz_t p, p1;
p = prv->_5A0;
p.x += sin_s(prv->_60C.x) * (GETREG(TAKREG, 70) + 30.0f);
p.z += cos_s(prv->_60C.x) * (GETREG(TAKREG, 70) + 30.0f);
p1 = p;
return mfish_PosWallCheck(prv, &p1) ? TRUE : FALSE;
}
s16 mfish_get_hide_camera_angle(MUSEUM_FISH_PRIVATE_DATA* priv) {
s16 v = priv->_60C.z;
if (v > 0 || (priv->_630 == 2 && fqrand() < 0.8f)) {
if (v > DEG2SHORT_ANGLE(90)) {
v = DEG2SHORT_ANGLE(90) + DEG2SHORT_ANGLE(45 * fqrand());
} else {
v = DEG2SHORT_ANGLE(90) - DEG2SHORT_ANGLE(45 * fqrand());
}
} else {
if (v > DEG2SHORT_ANGLE(-90)) {
v = DEG2SHORT_ANGLE(-90) + DEG2SHORT_ANGLE(45 * fqrand());
} else {
v = DEG2SHORT_ANGLE(-90) - DEG2SHORT_ANGLE(45 * fqrand());
}
}
return v;
}
void mfish_dummy_process_init(MUSEUM_FISH_PRIVATE_DATA* prv) {
prv->_634 = mfish_get_hide_camera_angle(prv);
if (prv->_630 == 2 && prv->_60C.z < 0 && prv->_634 > 0) {
prv->_5F0 = MAX(prv->init_data._10, GETREG(TAKREG, 80) * 0.1f + 1.2f);
}
prv->_34 = mfish_dummy_process;
}
void mfish_dummy_process(MUSEUM_FISH_PRIVATE_DATA* actor) {
// no clue what's going on here
add_calc_short_angle2(&actor->_612.z, actor->_634, CALC_EASE2(0.0f), DEG2SHORT_ANGLE(3.75f), 0x2d);
actor->_622 = add_calc_short_angle2(&actor->_60C.z, actor->_612.z, CALC_EASE2(0.5f), DEG2SHORT_ANGLE(5.0f), 0x2d);
add_calc_short_angle2(&actor->_61C, actor->_622, CALC_EASE2(0.5f), DEG2SHORT_ANGLE(5.0f), 0x2d);
if (actor->_630 == 2) {
if (actor->_612.z < 0) {
actor->_626--;
} else {
add_calc2(&actor->_5E8, actor->_5F0, 0.1f, 0.05f);
add_calc0(&actor->_5F0, 0.05f, 0.1f);
}
}
}
void mfish_normal_process_init(MUSEUM_FISH_PRIVATE_DATA* fishActor) {
f32 ra;
f32 t;
f32 temp;
ra = fqrand() * fishActor->init_data._14 + fishActor->init_data._10;
t = (ra) / MAX(fishActor->init_data._14 + fishActor->init_data._10, 1);
if (ra > fishActor->_5E8) {
fishActor->_5F0 = ra;
}
fishActor->_5F4 = Rnd_EX_fx(10.0f) * t;
fishActor->_612.x =
atans_table(fishActor->_5E8, fishActor->_5F4 + fishActor->init_data._0C - fishActor->_5A0.y) >> 4;
fishActor->_5D4 = 0;
if (fqrand() > fishActor->init_data._1C) {
int diff;
fishActor->_612.z += (s16)Rnd_EX_fx(fishActor->init_data._30 * 2.0f);
diff = fishActor->_612.z - fishActor->_60C.z;
if (ABS((s16)diff) < DEG2SHORT_ANGLE(20)) {
if ((s16)diff > 0) {
fishActor->_612.z += DEG2SHORT_ANGLE(20);
} else {
fishActor->_612.z += DEG2SHORT_ANGLE(-20);
}
}
fishActor->_632 = DEG2SHORT_ANGLE(t * 15 + 20);
} else {
if ((s16)(fishActor->_612.z - fishActor->_60C.z) > 0) {
fishActor->_612.z += DEG2SHORT_ANGLE(15);
} else {
fishActor->_612.z += DEG2SHORT_ANGLE(-15);
}
fishActor->_632 = DEG2SHORT_ANGLE((GETREG(TAKREG, 42) + 40.0f) * t + 30);
}
if ((s16)(fishActor->_612.z - fishActor->_60C.z) > 0) {
fishActor->_636 = DEG2SHORT_ANGLE(0);
} else {
fishActor->_636 = DEG2SHORT_ANGLE(-180);
}
fishActor->_62E &= ~0xC0;
fishActor->_34 = mfish_normal_process;
}
void mfish_normal_process(MUSEUM_FISH_PRIVATE_DATA* actor) {
if (actor->_632 > DEG2SHORT_ANGLE(20)) {
add_calc(&actor->_5E8, actor->_5F0, CALC_EASE(0.2f),
(((actor->_632 - DEG2SHORT_ANGLE(20)) / DEG2SHORT_ANGLE(2)) * 0.04f + 0.1f) * 0.5f, 0.05f);
} else if (actor->_626 > actor->_628 - 10) {
add_calc(&actor->_5E8, actor->_5F0, CALC_EASE(0.5f), 0.75f, 0.05f);
}
add_calc_short_angle2(&actor->_632, 0, CALC_EASE2(0.5f), DEG2SHORT_ANGLE(1.25f), DEG2SHORT_ANGLE(0.25f));
actor->_636 += DEG2SHORT_ANGLE(10.0f);
actor->_622 = add_calc_short_angle2(&actor->_60C.z, actor->_612.z + (s16)(actor->_632 * sin_s(actor->_636)),
CALC_EASE2(0.5f), DEG2SHORT_ANGLE(6.25f), 45);
add_calc_short_angle2(&actor->_61C, actor->_622, CALC_EASE2(0.5f), DEG2SHORT_ANGLE(3.75f), 45);
if (actor->_5E8 < 0.01f || actor->_630 == 2 && actor->_5E8 < 0.05f) {
mfish_dummy_process_init(actor);
} else if (actor->_5E8 > 1.0f && actor->_62E & 0x1e) {
if ((s16)(actor->_60C.z - actor->_62C) > 0) {
actor->_612.z = actor->_62C + DEG2SHORT_ANGLE(112.5f);
} else {
actor->_612.z = actor->_62C - DEG2SHORT_ANGLE(112.5f);
}
actor->_632 = 0;
}
}
void mfish_turn_process_init() {
return;
}
void mfish_turn_process() {
return;
}
void mfish_peck_process_init() {
return;
}
void mfish_peck_process() {
return;
}
void mfish_ground_peck_process_init() {
return;
}
void mfish_ground_peck_process() {
return;
}
void mfish_base_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_base_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_onefish_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
YET_SKELETON* huh = &actor->_38;
// looks like it loads from 0x38, which i labeled as the skeleton,
// but then it adds like 0x514 to it, so this must be huge
// cKF_SkeletonInfo_R_ct(&huh->_00, huh->_00); //TODO
return;
}
void mfish_onefish_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
cKF_SkeletonInfo_R_play(&actor->_38._00);
return;
}
int mfish_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f, void* arg,
s_xyz* joint1, xyz_t* trans) {
MUSEUM_FISH_PRIVATE_DATA* actor = (MUSEUM_FISH_PRIVATE_DATA*)arg;
if (joint_num == 2) {
int v, t;
if (actor->_630 != 4) {
v = 2;
} else if (actor->init_data._20 > 0.7f) {
v = 1;
} else if (actor->init_data._20 > 0.5f) {
v = 2;
} else {
v = 3;
}
t = joint1->y - (actor->_61C * v);
joint1->y = MY_CLAMP(t, DEG2SHORT_ANGLE(-60), DEG2SHORT_ANGLE(60));
t = joint1->x - (actor->_61C >> 1);
joint1->x = MY_CLAMP(t, DEG2SHORT_ANGLE(-25), DEG2SHORT_ANGLE(25));
}
return 1;
}
void mfish_onefish_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
YET_SKELETON* skele;
Mtx* mtx;
GAME_PLAY* play;
GRAPH* graph;
play = (GAME_PLAY*)gamex;
skele = &actor->_38;
if (play->game.frame_counter % 2 != 0) {
mtx = &skele->_70;
} else {
mtx = &skele->_2b0;
}
graph = play->game.graph;
Matrix_translate(actor->_5A0.x, actor->_5A0.y + actor->_5AC.y, actor->_5A0.z, 0);
Matrix_RotateY(actor->_60C.z, 1);
Matrix_translate(0.0f, 0.25f * actor->init_data._04, 0.5f * actor->init_data._24, 1);
Matrix_RotateX(actor->_60C.x, 1);
Matrix_RotateZ(MY_CLAMP(-(actor->_61C >> 1), DEG2SHORT_ANGLE(-20), DEG2SHORT_ANGLE(20)), 1);
Matrix_translate(0.0f, 0.25f * -actor->init_data._04, 0.5f * -actor->init_data._24, 1);
Matrix_scale(actor->init_data._00, actor->init_data._00, actor->init_data._00, 1);
OPEN_DISP(graph);
gSPMatrix(NEXT_POLY_OPA_DISP, _Matrix_to_Mtx_new(play->game.graph), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
CLOSE_DISP(graph);
cKF_Si3_draw_R_SV(&play->game, &skele->_00, mtx, &mfish_before_disp, 0, actor);
}
void mfish_ani_base_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_ani_base_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_ani_base_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void Museum_Fish_BigFishObjCheck() {
return;
}
void Museum_Fish_ObjBGCheck() {
return;
}
void Museum_Fish_DonkoBGCheck() {
return;
}
void Museum_Fish_objchk_pos_set() {
return;
}
void Museum_Fish_BGCheck() {
return;
}
void Museum_Fish_Kusa_Check() {
static int kusa_group_tbl[14] = { 0, 2, 1, 3, 3, 4, 4, 4, 4, 4, 0, 2, 1, 3 };
}
void Museum_Fish_Object_Check() {
return;
}
void mfish_body_wind_anime_play() {
return;
}
void mfish_get_player_angle() {
return;
}
void mfish_peck_check() {
return;
}
void mfish_peck_wall_check() {
return;
}
void mfish_ground_peck_before_check() {
return;
}
void mfish_get_player_area() {
return;
}
void mfish_get_flow_vec(xyz_t* pos, MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game) {
return;
}
void mfish_get_escape_angle() {
return;
}
void mfish_move_smooth() {
return;
}
void mfish_hamon_make() {
return;
}
+286
View File
@@ -0,0 +1,286 @@
void mfish_bass_tail_anim_set(MUSEUM_FISH_PRIVATE_DATA* actor, s32 r4) {
if (r4 == 0) {
actor->_640 = 0xf;
actor->_5AC.z = 4;
} else if (r4 == 1 && actor->_640 == 0) {
actor->_640 = 0x14;
actor->_5AC.z = 3;
}
}
void mfish_bass_base_FishMove(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* game) {
GAME_PLAY* play = (GAME_PLAY*)game;
f32 t;
xyz_t pos;
add_calc2(&actor->_5E8, actor->_5AC.x, 1 - actor->init_data._18, 0.01f + 0.001f * GETREG(TAKREG, 20));
actor->_5D0 = actor->_5E8 * sin_s(actor->_60C.z);
actor->_5D8 = actor->_5E8 * cos_s(actor->_60C.z);
add_calc(&actor->_5D4, MAX(ABS(actor->_5E8 * sin_s(actor->_60C.x)), 0.1f), 0.1f, 0.1f, 0.005f);
t = add_calc(&actor->_5A0.y, actor->_5F4 + actor->init_data._0C, 0.1f, actor->_5D4, 0);
if (fabsf(t) < 0.08f) {
add_calc_short_angle2(&actor->_612.x, 0, CALC_EASE(0.03f), DEG2SHORT_ANGLE(1.0f + (0.5f * actor->_5AC.y)) >> 1,
9);
}
mfish_move_smooth(actor, game);
mfish_get_flow_vec(&pos, actor, game);
actor->_5A0.y += actor->_5D0 + actor->_5DC.x;
actor->_5A0.z += actor->_5D0 + actor->_5DC.x;
actor->_5A0.y = actor->_5A0.y + actor->_5DC.y;
actor->_5A0.y = MAX(60, MIN(110, actor->_5A0.y));
}
void mfish_bass_dummy_process_init(MUSEUM_FISH_PRIVATE_DATA* actor) {
actor->_634 = mfish_get_hide_camera_angle(actor);
if ((actor->_62E & 0x1E) != 0) {
// works with temp instead of cast
if ((s16)(actor->_612.z - actor->_62C) > 0) {
actor->_634 = actor->_62C + DEG2SHORT_ANGLE(90);
} else {
actor->_634 = actor->_62C - DEG2SHORT_ANGLE(90);
}
} else {
add_calc_short_angle2(&actor->_634, actor->_612.z, CALC_EASE(0.5f), DEG2SHORT_ANGLE(22.5), 0x5b);
}
actor->_5EC = 0.0f;
actor->_34 = &mfish_bass_dummy_process;
return;
}
void mfish_bass_dummy_process(MUSEUM_FISH_PRIVATE_DATA* actor) {
// no clue what's going on here
add_calc_short_angle2(&actor->_612.z, actor->_634, CALC_EASE2(0.0f), 0x1c7, 0x2d);
actor->_622 = add_calc_short_angle2(&actor->_60C.z, actor->_612.z, CALC_EASE2(0.25f), 0xe3, 0x2d);
add_calc_short_angle2(&actor->_61C, actor->_622, CALC_EASE2(0.25f), 0xe3, 0x2d);
}
void mfish_bass_normal_process_init(MUSEUM_FISH_PRIVATE_DATA* fishActor) {
f32 ra;
f32 t;
f32 temp;
ra = fqrand() * fishActor->init_data._14 + fishActor->init_data._10;
t = (ra) / MAX(fishActor->init_data._14 + fishActor->init_data._10, 1);
if (fqrand() > 0.25f && !(fishActor->_62E & 0x200)) {
fishActor->_62E |= 0x200;
} else {
fishActor->_62E &= ~0x200;
}
if (ra > fishActor->_5E8) {
f32 v2;
fishActor->_5F0 = ra;
fishActor->_5AC.x = 0.15f + Rnd_EX_fx(0.1f);
mfish_bass_tail_anim_set(fishActor, 0);
}
fishActor->_5F4 = t * Rnd_EX_fx(10);
temp = (fishActor->_5F4 + fishActor->init_data._0C - fishActor->_5A0.y);
fishActor->_612.x = DEG2SHORT_ANGLE2(temp * -(2 * fishActor->_5AC.y + 10));
fishActor->_612.x = CLAMP(fishActor->_612.x, DEG2SHORT_ANGLE(-50), DEG2SHORT_ANGLE(50));
fishActor->_5D4 = 0;
if (fqrand() > fishActor->init_data._1C) {
int diff;
fishActor->_612.z += (s16)Rnd_EX_fx(fishActor->init_data._30 * 2.0f);
diff = fishActor->_612.z - fishActor->_60C.z;
if (ABS((s16)diff) < DEG2SHORT_ANGLE(20)) {
if ((s16)diff > 0) {
fishActor->_612.z += DEG2SHORT_ANGLE(20);
} else {
fishActor->_612.z += DEG2SHORT_ANGLE(-20);
}
}
if ((fishActor->_62E & 0x200) == 0) {
fishActor->_632 = DEG2SHORT_ANGLE(t * 15 + 20);
} else {
fishActor->_632 = DEG2SHORT_ANGLE(t * 30 + 20);
}
} else {
if ((s16)(fishActor->_612.z - fishActor->_60C.z) > 0) {
fishActor->_612.z += DEG2SHORT_ANGLE(15);
} else {
fishActor->_612.z += DEG2SHORT_ANGLE(-15);
}
if ((fishActor->_62E & 0x200) == 0) {
fishActor->_632 = DEG2SHORT_ANGLE(t * 15 + 20);
} else {
fishActor->_632 = DEG2SHORT_ANGLE((GETREG(TAKREG, 42) + 40.0f) * t + 30);
}
}
if ((s16)(fishActor->_612.z - fishActor->_60C.z) > 0) {
fishActor->_636 = DEG2SHORT_ANGLE(0);
} else {
fishActor->_636 = DEG2SHORT_ANGLE(-180);
}
fishActor->_62E &= ~0xC0;
fishActor->_5EC = 0;
fishActor->_34 = mfish_bass_normal_process;
}
void mfish_bass_normal_process(MUSEUM_FISH_PRIVATE_DATA* actor) {
if (((actor->_62E & 0x200) != 0 && actor->_632 > DEG2SHORT_ANGLE(20)) || actor->_640 > 0) {
f32 v = (actor->_5AC.y * 0.03f + 0.02f);
add_calc2(&actor->_5EC,
v + (actor->_5AC.y * 0.02f + 0.03f) * (float)((actor->_632 - DEG2SHORT_ANGLE(20)) / 364),
actor->_5AC.y * 0.04f + 0.01f, actor->_5AC.y * 0.02f + 0.01f);
add_calc(&actor->_5E8, actor->_5F0, CALC_EASE(v), actor->_5EC * 0.5f, 0.02f);
}
if (actor->_62E & 0x200) {
add_calc_short_angle2(&actor->_632, 0, CALC_EASE2(GETREG(TAKREG, 73) * 0.1f + 4.0f),
(s16)(DEG2SHORT_ANGLE(GETREG(TAKREG, 73) * 0.1f + 4.0f) >> 1) >> 1, 45);
actor->_636 = actor->_636 + (s16)DEG2SHORT_ANGLE2(
(3.0f * actor->_5E8) / (actor->init_data._14 + actor->init_data._10) + 9.0f);
} else {
add_calc_short_angle2(&actor->_632, 0, CALC_EASE2(0.5f), 227, 45);
actor->_636 += DEG2SHORT_ANGLE(10);
}
actor->_622 = add_calc_short_angle2(&actor->_60C.z, actor->_612.z + (s16)(actor->_632 * sin_s(actor->_636)),
CALC_EASE2(actor->_5AC.y * 0.25f + 0.25f),
(s16)(DEG2SHORT_ANGLE(actor->_5AC.y * 15.0f + 10.0f) >> 1) >> 1, 22);
add_calc_short_angle2(&actor->_61C, actor->_622, CALC_EASE2(actor->_5AC.y * 0.25f + 0.25f),
(s16)(DEG2SHORT_ANGLE(actor->_5AC.y * 8.0f + 7.0f) >> 1) >> 1, 22);
if (actor->_5E8 < 0.01f) {
mfish_bass_dummy_process_init(actor);
} else if (actor->_5E8 > 1.0f && actor->_62E & 0x1e) {
if ((s16)(actor->_60C.z - actor->_62C) > 0) {
actor->_612.z = actor->_62C + DEG2SHORT_ANGLE(112.5f);
} else {
actor->_612.z = actor->_62C - DEG2SHORT_ANGLE(112.5f);
}
actor->_632 = 0;
}
}
void mfish_bass_turn_process_init(MUSEUM_FISH_PRIVATE_DATA* actor) {
s16 a;
s16 b;
b = a = 0x2000 + DEG2SHORT_ANGLE(fqrand() * 75.0f);
actor->_61A =
DEG2SHORT_ANGLE((actor->_5AC.y * 4.0f + 4.0f) * (SHORT2DEG_ANGLE2(a) / 120.0f) + 2.0f + actor->_5AC.y);
if (actor->_62E & 0x1e) {
if ((s16)(actor->_60C.x - actor->_62C) < 0) {
b = -a;
}
} else if (actor->_62E & 0xC0) {
if (actor->_62E & 0x40) {
b = ABS(a);
} else {
b = -ABS(a);
}
} else if (actor->_62E & 0x20) {
if ((s16)(actor->_62A - actor->_60C.x) < 0) {
b = -a;
}
}
if (b > 0) {
actor->_62E |= 0x40;
} else {
actor->_62E |= 0x80;
}
actor->_612.z += b;
if ((fqrand() < 0.25f) && (actor->_62E & 0x200) == 0) {
actor->_62E |= 0x200;
} else {
actor->_62E &= ~0x200;
}
if ((actor->_62E & 0x200) == 0) {
actor->_5F0 = 1.75f;
actor->_5AC.x = Rnd_EX_fx(0.1f) + 0.15f;
} else {
actor->_5F0 = actor->init_data._10 + actor->init_data._14 * 0.7f;
actor->_5AC.x = Rnd_EX_fx(0.1f) + 0.15f;
}
if (fqrand() < 0.2f) {
actor->_63E = (s16)(fqrand() * 3.0f + 1.0f);
} else {
actor->_63E = 0;
}
actor->_5EC = 0.0f;
actor->_34 = mfish_bass_turn_process;
}
void mfish_bass_turn_process(MUSEUM_FISH_PRIVATE_DATA* actor) {
int a;
if (ABS(actor->_622) > DEG2SHORT_ANGLE(20)) {}
}
void mfish_bass_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
mfish_onefish_ct(actor, gamex);
mfish_base_ct(actor, gamex);
actor->_34 = mfish_bass_normal_process;
if (actor->_59C == 7) {
actor->_5AC.y = 0;
} else if (actor->_59C == 6) {
actor->_5AC.y = 0.5f;
} else {
actor->_5AC.y = 1;
}
actor->_624 = 0xb;
return;
}
void mfish_bass_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_bass_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
YET_SKELETON* skele;
Mtx* mtx;
GRAPH* graph;
GAME_PLAY* play;
play = (GAME_PLAY*)gamex;
skele = &actor->_38;
if (play->game.frame_counter % 2 != 0) {
mtx = &skele->_70;
} else {
mtx = &skele->_2b0;
}
graph = play->game.graph;
Matrix_translate(actor->_5A0.x, actor->_5A0.y, actor->_5A0.z, 0);
Matrix_RotateY(actor->_60C.z, 1);
Matrix_translate(0, 0.25f * actor->init_data._04, 0.5f * actor->init_data._24, 1);
Matrix_RotateX(actor->_60C.x, 1);
Matrix_RotateZ(MY_CLAMP(-(actor->_61C >> 1), DEG2SHORT_ANGLE(-20), DEG2SHORT_ANGLE(20)), 1);
Matrix_translate(0, 0.25f * -actor->init_data._04, 0.5f * -actor->init_data._24, 1);
Matrix_scale(actor->init_data._00, actor->init_data._00, actor->init_data._00, 1);
OPEN_DISP(graph);
gSPMatrix(NEXT_POLY_OPA_DISP, _Matrix_to_Mtx_new(play->game.graph), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
CLOSE_DISP(graph);
cKF_Si3_draw_R_SV(&play->game, &skele->_00, mtx, &mfish_before_disp, 0, actor);
return;
}
+22
View File
@@ -0,0 +1,22 @@
void mfish_big_fish_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_big_fish_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_bfish_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_big_fish_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+38
View File
@@ -0,0 +1,38 @@
void mfish_dojou_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_dojou_normal_init() {
return;
}
void mfish_dojou_normal() {
return;
}
void mfish_dojou_turn_init() {
return;
}
void mfish_dojou_turn() {
return;
}
void mfish_dojou_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_dojou_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_dojou_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+22
View File
@@ -0,0 +1,22 @@
void mfish_donko_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_donko_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_donko_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_donko_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+38
View File
@@ -0,0 +1,38 @@
void mfish_gupi_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_gupi_normal_init() {
return;
}
void mfish_gupi_normal() {
return;
}
void mfish_gupi_turn_init() {
return;
}
void mfish_gupi_turn() {
return;
}
void mfish_gupi_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_gupi_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_gupi_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+44
View File
@@ -0,0 +1,44 @@
void mfish_hasu_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_hasu_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_hasu_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_kaeru_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_kaeru_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void hasu_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f, void* arg,
s_xyz* joint1, xyz_t* trans) {
return;
}
void hasu_after_disp() {
return;
}
void mfish_kaeru_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+22
View File
@@ -0,0 +1,22 @@
void mfish_ito_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_ito_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_ito_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_ito_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+34
View File
@@ -0,0 +1,34 @@
void mfish_kaseki_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_kaseki_normal_init() {
return;
}
void mfish_kaseki_normal() {
return;
}
void mfish_kaseki_move_wall_smooth() {
return;
}
void mfish_kaseki_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_kaseki_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_kaseki_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+46
View File
@@ -0,0 +1,46 @@
void mfish_kingyo_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_kingyo_normal_init() {
return;
}
void mfish_kingyo_normal() {
return;
}
void mfish_kingyo_turn_init() {
return;
}
void mfish_kingyo_turn() {
return;
}
void mfish_kingyo_peck_init() {
return;
}
void mfish_kingyo_peck() {
return;
}
void mfish_kingyo_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_kingyo_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_kingyo_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+80
View File
@@ -0,0 +1,80 @@
void mfish_koi_tail_anim_set() {
return;
}
void mfish_koi_move_smooth() {
return;
}
void mfish_koi_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_koi_dummy_process_init() {
return;
}
void mfish_koi_dummy_process() {
return;
}
void mfish_koi_normal_process_init() {
return;
}
void mfish_koi_normal_process() {
return;
}
void mfish_koi_turn_process_init() {
return;
}
void mfish_koi_turn_process() {
return;
}
void mfish_koi_peck_process_init() {
return;
}
void mfish_koi_peck_process() {
return;
}
void mfish_koi_long_move_process_init() {
return;
}
void mfish_koi_long_move_process() {
return;
}
void mfish_koi_base_FishMove() {
return;
}
void mfish_koi_base_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_koi_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_koi_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_koi_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+33
View File
@@ -0,0 +1,33 @@
void mfish_kurage_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_kurage_normal_init() {
return;
}
void mfish_kurage_normal() {
return;
}
void mfish_kurage_turn_init() {
return;
}
void mfish_kurage_turn() {
return;
}
void mfish_kurage_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_kurage_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+38
View File
@@ -0,0 +1,38 @@
void mfish_medaka_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_medaka_normal_init() {
return;
}
void mfish_medaka_normal() {
return;
}
void mfish_medaka_turn_init() {
return;
}
void mfish_medaka_turn() {
return;
}
void mfish_medaka_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_medaka_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_medaka_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+61
View File
@@ -0,0 +1,61 @@
void mfish_namazu_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_namazu_body_wind_anime_play() {
return;
}
void mfish_namazu_normal_process_init() {
return;
}
void mfish_namazu_normal_process() {
return;
}
void mfish_namazu_dummy_process_init() {
return;
}
void mfish_namazu_dummy_process() {
return;
}
void mfish_namazu_turn_process_init() {
return;
}
void mfish_namazu_turn_process() {
return;
}
void mfish_namazu_ground_sweep_process_init() {
return;
}
void mfish_namazu_ground_sweep_process() {
return;
}
void mfish_namazu_base_FishMove() {
return;
}
void mfish_namazu_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_namazu_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_namazu_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+38
View File
@@ -0,0 +1,38 @@
void mfish_seafish_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_seafish_normal_init() {
return;
}
void mfish_seafish_normal() {
return;
}
void mfish_seafish_turn_init() {
return;
}
void mfish_seafish_turn() {
return;
}
void mfish_seafish_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_seafish_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_seafish_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+38
View File
@@ -0,0 +1,38 @@
void mfish_small_fish_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_sfish_normal_init() {
return;
}
void mfish_sfish_normal() {
return;
}
void mfish_sfish_turn_init() {
return;
}
void mfish_sfish_turn() {
return;
}
void mfish_small_fish_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_sfish_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_small_fish_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+38
View File
@@ -0,0 +1,38 @@
void mfish_tai_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_tai_normal_init() {
return;
}
void mfish_tai_normal() {
return;
}
void mfish_tai_turn_init() {
return;
}
void mfish_tai_turn() {
return;
}
void mfish_tai_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_tai_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_tai_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+62
View File
@@ -0,0 +1,62 @@
void mfish_unagi_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_unagi_get_next_rail_type() {
return;
}
void mfish_unagi_aim_wind_angle_calc() {
return;
}
void mfish_unagi_rail_move_init() {
return;
}
void mfish_unagi_rail_move() {
return;
}
void mfish_unagi_normal_to_reverse_init() {
return;
}
void mfish_unagi_normal_to_reverse() {
return;
}
void mfish_unagi_rail_move_reverse_init() {
return;
}
void mfish_unagi_rail_move_reverse() {
return;
}
void mfish_unagi_reverse_to_normal_init() {
return;
}
void mfish_unagi_reverse_to_normal() {
return;
}
void mfish_unagi_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_unagi_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_unagi_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
+54
View File
@@ -0,0 +1,54 @@
void mfish_zarigani_ct(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_zarigani_normal_process_init() {
return;
}
void mfish_zarigani_normal_process() {
return;
}
void mfish_zarigani_wait_process_init() {
return;
}
void mfish_zarigani_wait_process() {
return;
}
void mfish_zarigani_stand_process_init() {
return;
}
void mfish_zarigani_stand_process() {
return;
}
void mfish_zarigani_jump_process_init() {
return;
}
void mfish_zarigani_jump_process() {
return;
}
void mfish_zarigani_mv(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}
void mfish_zarigani_before_disp(GAME* game, cKF_SkeletonInfo_R_c* keyframe, int joint_num, Gfx** joint_m, u8* joint_f,
void* arg, s_xyz* joint1, xyz_t* trans) {
return;
}
void mfish_zarigani_dw(MUSEUM_FISH_PRIVATE_DATA* actor, GAME* gamex) {
GAME_PLAY* game = (GAME_PLAY*)gamex;
return;
}