From 4dfdb142d94bb76446aa5380ce157ebe31401ecb Mon Sep 17 00:00:00 2001 From: Prakxo Date: Sat, 31 Aug 2024 22:38:21 +0200 Subject: [PATCH] fixes --- include/m_player.h | 18 +++++++++++++++++- src/m_player.c | 2 +- src/m_player_common.c_inc | 2 +- src/m_player_main_putin_item.c_inc | 2 +- src/m_player_main_takeout_item.c_inc | 2 +- src/m_player_main_wait.c_inc | 20 ++++++++++---------- 6 files changed, 31 insertions(+), 15 deletions(-) diff --git a/include/m_player.h b/include/m_player.h index dd19096a..7a5f62ff 100644 --- a/include/m_player.h +++ b/include/m_player.h @@ -583,7 +583,7 @@ enum { (mPlayer_ITEM_IS_UMBRELLA(kind) || mPlayer_ITEM_IS_BALLOON(kind) || mPlayer_ITEM_IS_WINDMILL(kind) || \ mPlayer_ITEM_IS_FAN(kind)) -#define mPlayer_ITEM_KIND_VALID(kind) ((kind) >= 0 && kind < mPlayer_ITEM_KIND_NUM) +#define mPlayer_ITEM_KIND_VALID(kind) (mPlayer_ITEM_KIND_CHECK(kind, 0, mPlayer_ITEM_KIND_NUM)) enum { mPlayer_ITEM_DATA_AXE, // model @@ -1719,6 +1719,19 @@ typedef struct player_main_putaway_uki_s { f32 unk0; } mPlayer_main_putaway_uki_c; +typedef struct player_main_balloon_s { + int balloon_shape_type; +} mPlayer_main_balloon_c; + +typedef struct player_main_turn_dash_s { + s16 target_angle_y; +} mPlayer_main_turn_dash_c; + +typedef struct player_main_fall_s { + f32 morph_speed; + int flags; +} mPlayer_main_turn_fall_c; + typedef union { mPlayer_main_intro_c intro; mPlayer_main_return_demo_c return_demo; @@ -1762,6 +1775,9 @@ typedef union { mPlayer_main_demo_getoff_boat_standup_c demo_getoff_boat_standup; mPlayer_main_uki_c uki; mPlayer_main_putaway_uki_c putaway_uki; + mPlayer_main_balloon_c balloon; + mPlayer_main_turn_dash_c turn_dash; + mPlayer_main_turn_fall_c fall; u8 force_size[72]; // TEMP } mPlayer_main_data; diff --git a/src/m_player.c b/src/m_player.c index 08c6527b..ce2df543 100644 --- a/src/m_player.c +++ b/src/m_player.c @@ -33,7 +33,7 @@ static int Player_actor_Movement_Base_Braking_common(ACTOR* actorx, f32 brake_am static int Player_actor_Movement_Base_Braking(ACTOR* actorx); static void Player_actor_Movement_Base_Stop(ACTOR* actorx, int use_position_speed_y); static int Player_actor_CulcAnimation_Base2(ACTOR* actorx, f32* last_anim0_current_frame_p); -static int Player_actor_Check_AnimationFrame_PerfectEquel(ACTOR* actorx, f32 frame); +static int Player_actor_Check_AnimationFrame_PerfectEquel(ACTOR* actorx, GAME* game, f32 frame); static int Player_actor_Check_AnimationFrame(cKF_FrameControl_c* fc_p, f32 target_frame); static void Player_actor_set_eye_pattern(ACTOR* actorx, int idx); static void Player_actor_set_eye_pattern_normal(ACTOR* actorx); diff --git a/src/m_player_common.c_inc b/src/m_player_common.c_inc index 24e4b710..a9858861 100644 --- a/src/m_player_common.c_inc +++ b/src/m_player_common.c_inc @@ -2299,7 +2299,7 @@ static void Player_actor_putin_furniture(GAME* game, int slot, mActor_name_t ite } } -static int Player_actor_Check_AnimationFrame_PerfectEquel(ACTOR* actorx, f32 frame) { +static int Player_actor_Check_AnimationFrame_PerfectEquel(ACTOR* actorx, GAME* game, f32 frame) { PLAYER_ACTOR* player = (PLAYER_ACTOR*)actorx; cKF_SkeletonInfo_R_c* kf0_p = &player->keyframe0; cKF_FrameControl_c* fc_p = &kf0_p->frame_control; diff --git a/src/m_player_main_putin_item.c_inc b/src/m_player_main_putin_item.c_inc index e2f6fba7..647b6100 100644 --- a/src/m_player_main_putin_item.c_inc +++ b/src/m_player_main_putin_item.c_inc @@ -89,7 +89,7 @@ static void Player_actor_SetItemScale_Putin_item(ACTOR* actorx) { } static void Player_actor_SearchAnimation_Putin_item(ACTOR* actorx, GAME* game, f32 frame) { - if (Player_actor_Check_AnimationFrame_PerfectEquel(actorx, frame) == FALSE) { + if (Player_actor_Check_AnimationFrame_PerfectEquel(actorx, game, frame) == FALSE) { Player_actor_Set_FootMark_Base1(actorx, game, FALSE, FALSE); } } diff --git a/src/m_player_main_takeout_item.c_inc b/src/m_player_main_takeout_item.c_inc index e0cad276..bc74782c 100644 --- a/src/m_player_main_takeout_item.c_inc +++ b/src/m_player_main_takeout_item.c_inc @@ -63,7 +63,7 @@ static void Player_actor_ObjCheck_Takeout_item(ACTOR* actorx, GAME* game) { } static void Player_actor_SearchAnimation_Takeout_item(ACTOR* actorx, GAME* game, f32 frame) { - if (Player_actor_Check_AnimationFrame_PerfectEquel(actorx, frame) == FALSE) { + if (Player_actor_Check_AnimationFrame_PerfectEquel(actorx, game, frame) == FALSE) { Player_actor_Set_FootMark_Base1(actorx, game, FALSE, FALSE); } } diff --git a/src/m_player_main_wait.c_inc b/src/m_player_main_wait.c_inc index 8e31c9eb..5aa0a8ad 100644 --- a/src/m_player_main_wait.c_inc +++ b/src/m_player_main_wait.c_inc @@ -16,7 +16,7 @@ static int Player_actor_request_main_wait_all(GAME* game, f32 morph_speed, f32 _ } static void Player_actor_request_main_wait_from_submenu(ACTOR* actor, GAME* game) { - Player_actor_request_main_wait_all(game, -5.0f, 0.0f, 0, 31); + Player_actor_request_main_wait_all(game, -5.0f, 0.0f, 0, mPlayer_REQUEST_PRIORITY_31); } static void Player_actor_setup_main_Wait(ACTOR* actor, GAME* game) { @@ -76,29 +76,29 @@ static void Player_actor_BGcheck_Wait(ACTOR* actor) { static void Player_actor_request_proc_index_fromWait(ACTOR* actor, GAME* game) { if (!actor->bg_collision_check.result.on_ground) { - Player_actor_request_main_fall_all(game, -5.0f, 1, 1); + Player_actor_request_main_fall_all(game, -5.0f, 1, mPlayer_REQUEST_PRIORITY_1); } - Player_actor_CheckAndRequest_main_axe_all(game, 4); + Player_actor_CheckAndRequest_main_axe_all(game, mPlayer_REQUEST_PRIORITY_4); if (Player_actor_CheckController_forNet(game) != 0) { - Player_actor_request_main_ready_net(game, 4); + Player_actor_request_main_ready_net(game, mPlayer_REQUEST_PRIORITY_4); } if (Player_actor_CheckController_forRod(game) != 0) { - Player_actor_request_main_ready_rod(game, 4); + Player_actor_request_main_ready_rod(game, mPlayer_REQUEST_PRIORITY_4); } - Player_actor_CheckAndRequest_main_scoop_all(game, 4); - Player_actor_CheckAndRequest_main_umbrella_all(game, 4); - Player_actor_CheckAndRequest_main_fan_all(game, 1, 1, 4); + Player_actor_CheckAndRequest_main_scoop_all(game, mPlayer_REQUEST_PRIORITY_4); + Player_actor_CheckAndRequest_main_umbrella_all(game, mPlayer_REQUEST_PRIORITY_4); + Player_actor_CheckAndRequest_main_fan_all(game, 1, 1, mPlayer_REQUEST_PRIORITY_4); Player_actor_CheckAndRequest_main_shake_tree_all(game); if ((Player_actor_GetController_move_percentX()) || (Player_actor_GetController_move_percentY())) { - Player_actor_request_main_walk_all(game, NULL, -5.0f, 4, 1); + Player_actor_request_main_walk_all(game, NULL, -5.0f, 4, mPlayer_REQUEST_PRIORITY_1); } Player_actor_CheckAndRequest_main_pickup_all(game); - Player_actor_CheckAndRequest_main_radio_exercise_all(game, 0); + Player_actor_CheckAndRequest_main_radio_exercise_all(game, mPlayer_REQUEST_PRIORITY_0); } static void Player_actor_main_Wait(ACTOR* actor, GAME* game) {