mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-05-23 14:41:38 -04:00
1511 lines
73 KiB
C
1511 lines
73 KiB
C
#include "m_player_lib.h"
|
|
|
|
#include "libultra/libultra.h"
|
|
#include "m_play.h"
|
|
#include "m_common_data.h"
|
|
#include "m_actor_shadow.h"
|
|
#include "m_bgm.h"
|
|
#include "sys_matrix.h"
|
|
#include "ac_tools.h"
|
|
#include "m_rcp.h"
|
|
#include "ac_my_room.h"
|
|
#include "ac_insect.h"
|
|
#include "ac_set_ovl_insect.h"
|
|
#include "m_house.h"
|
|
#include "ac_sign.h"
|
|
#include "m_msg.h"
|
|
#include "m_choice.h"
|
|
|
|
/* Static function declarations, add as needed for intellisense */
|
|
static int Player_actor_check_request_main_able(GAME* game, int request_main_index, int priority);
|
|
static void Player_actor_request_main_index(GAME* game, int request_index, int priority);
|
|
static void Player_actor_InitAnimation_Base1(ACTOR* actorx, GAME* game, int anim0_idx, int anim1_idx, f32 anim0_frame,
|
|
f32 anim1_frame, f32 frame_speed, f32 morph_counter, int part_table_idx);
|
|
static void Player_actor_InitAnimation_Base2(ACTOR* actorx, GAME* game, int anim0_idx, int anim1_idx, f32 anim0_frame,
|
|
f32 anim1_frame, f32 frame_speed, f32 morph_counter, int mode,
|
|
int part_table_idx);
|
|
static void Player_actor_InitAnimation_Base3(ACTOR* actorx, GAME* game, int anim0_idx, int anim1_idx, f32 frame_speed,
|
|
f32 morph_counter, int mode, int part_table_idx);
|
|
static void Player_actor_SetupItem_Base1(ACTOR* actorx, int anim1_idx, f32 item_morph_speed, int* anim1_idx_p,
|
|
int* part_table_idx_p);
|
|
static void Player_actor_setup_main_Base(ACTOR* actorx, GAME* game);
|
|
static int Player_actor_Movement_Base_Braking_common(ACTOR* actorx, f32 brake_amount);
|
|
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(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);
|
|
static void Player_actor_set_mouth_pattern(ACTOR* actorx, int idx);
|
|
static void Player_actor_set_tex_anime_pattern(ACTOR* actorx);
|
|
static void Player_actor_Excute_Corect_forBrake(ACTOR* actorx, GAME* game);
|
|
static void Player_actor_Excute_Corect_forStand(ACTOR* actorx, GAME* game);
|
|
static void Player_actor_BGcheck_common_type1(ACTOR* actorx);
|
|
static void Player_actor_BGcheck_common_type2(ACTOR* actorx);
|
|
static void Player_actor_BGcheck_common_type3(ACTOR* actorx);
|
|
static int Player_actor_RecieveDemoOrder_EffectOrder(void);
|
|
static void Player_actor_Reinput_force_position_angle(ACTOR* actorx, GAME* game);
|
|
static void Player_actor_recover_lean_angle(ACTOR* actorx);
|
|
static int Player_actor_Check_TradingItemMode(u8 mode);
|
|
static void Player_actor_SettleRequestMainIndexPriority(ACTOR* actorx);
|
|
static int Player_actor_check_item_is_fish(mActor_name_t item);
|
|
static void Player_actor_Change_ItemParent(ACTOR* actor);
|
|
static void Player_actor_Set_item_matrix_set(ACTOR* actorx);
|
|
static void Player_actor_Unset_item_matrix_set(ACTOR* actorx);
|
|
static void Player_actor_Birth_TradingItem(ACTOR* actor, mActor_name_t item, int mode, int present_flag);
|
|
static void Player_actor_CHange_TradingItemMode(ACTOR* actorx, u8 mode);
|
|
static int Player_actor_Check_ItemParent(ACTOR* actor);
|
|
static ACTOR* Player_actor_Get_umbrella_p(ACTOR* actor, GAME* game);
|
|
static s8 Player_actor_Get_ItemKind(ACTOR* actor, int kind);
|
|
static void Player_actor_Set_now_item_main_index(ACTOR* actorx, int item_main_index);
|
|
static void Player_actor_SetEffect_forTakeout_item(ACTOR* actorx, GAME* game);
|
|
static void Player_actor_Set_FootMark_Base1(ACTOR* actorx, GAME* game, int disable_effect, int disable_sound);
|
|
static s8 Player_actor_Get_ItemKind_from_submenu(void);
|
|
static int Player_actor_Set_shake_tree_table(ACTOR* actorx, GAME* game, mActor_name_t item, int tree_ut_x,
|
|
int tree_ut_z, int little_flag);
|
|
static int Player_actor_Check_BirthBee_common(ACTOR* actorx, mActor_name_t item, int tree_ut_x, int tree_ut_z,
|
|
s16* angle_y_p);
|
|
static void Player_actor_Set_status_for_bee(ACTOR* actorx, s8 v);
|
|
static int Player_actor_check_able_request_main_index_for_reset(int request_main_index);
|
|
static void Player_actor_putin_item(int slot, mActor_name_t item, xyz_t* pos_p);
|
|
static void Player_actor_putin_item_layer2(int slot, mActor_name_t item, xyz_t* pos_p);
|
|
static void Player_actor_putin_furniture(GAME* game, int slot, mActor_name_t item);
|
|
|
|
static void Player_actor_sound_SetStatus(ACTOR* actor);
|
|
static void Player_actor_set_sound_common1(xyz_t* pos, u16 id);
|
|
static void Player_actor_set_sound_common2(ACTOR* actor, u16 id);
|
|
static void Player_actor_sound_FootStep1(ACTOR* actor, u16 id);
|
|
static void Player_actor_sound_FootStep2(ACTOR* actor);
|
|
static void Player_actor_sound_Tumble(ACTOR* actor);
|
|
static void Player_actor_sound_AMI_FURI(ACTOR* actor);
|
|
static void Player_actor_sound_AMI_HIT(ACTOR* actor);
|
|
static void Player_actor_sound_AMI_GET(ACTOR* actor);
|
|
static void Player_actor_sound_GASAGOSO(ACTOR* actor);
|
|
static void Player_actor_sound_AXE_FURI(ACTOR* actor);
|
|
static void Player_actor_sound_AXE_HIT(ACTOR* actor, xyz_t* pos);
|
|
static void Player_actor_sound_AXE_CUT(ACTOR* actor, xyz_t* pos);
|
|
static void Player_actor_sound_SIT(ACTOR* actor, int ftr_idx);
|
|
static void Player_actor_sound_STANDUP(ACTOR* actor, int ftr_idx);
|
|
static void Player_actor_sound_JUMP(ACTOR* actor);
|
|
static void Player_actor_sound_LANDING(ACTOR* actor);
|
|
static void Player_actor_sound_ITEM_GET(ACTOR* actor);
|
|
static void Player_actor_sound_BED_IN(ACTOR* actor);
|
|
static void Player_actor_sound_BED_NEGAERI(ACTOR* actor);
|
|
static void Player_actor_sound_BED_OUT(ACTOR* actor);
|
|
static void Player_actor_sound_ROD_STROKE(ACTOR* actor);
|
|
static void Player_actor_sound_ROD_STROKE_small(ACTOR* actor);
|
|
static void Player_actor_sound_ROD_BACK(ACTOR* actor);
|
|
static void Player_actor_sound_scoop1(ACTOR* actor);
|
|
static void Player_actor_sound_scoop_umeru(ACTOR* actor);
|
|
static void Player_actor_sound_scoop_hit(ACTOR* actor);
|
|
static void Player_actor_sound_scoop_shigemi(ACTOR* actor);
|
|
static void Player_actor_sound_ITEM_HORIDASHI(ACTOR* actor);
|
|
static void Player_actor_sound_slip(ACTOR* actor);
|
|
static void Player_actor_sound_tree_touch(xyz_t* pos);
|
|
static void Player_actor_sound_tree_yurasu(xyz_t* pos);
|
|
static void Player_actor_sound_kirikabu_scoop(ACTOR* actor);
|
|
static void Player_actor_sound_kirikabu_out(ACTOR* actor);
|
|
static void Player_actor_sound_knock(ACTOR* actor);
|
|
static void Player_actor_sound_coin_gasagoso(ACTOR* actor);
|
|
static void Player_actor_sound_araiiki(ACTOR* actor);
|
|
static void Player_actor_sound_zassou_nuku(xyz_t* pos);
|
|
static void Player_actor_sound_hachi_sasareru(ACTOR* actor);
|
|
static void Player_actor_sound_wear(ACTOR* actor);
|
|
static void Player_actor_sound_dai_ue_kakunou(ACTOR* actor);
|
|
static void Player_actor_sound_umbrella_rotate(ACTOR* actor);
|
|
static u16 Player_actor_sound_Get_bgm_num_forCompletePayment();
|
|
static u16 Player_actor_sound_Get_bgm_num_forDemoGetGoldenItem(int type);
|
|
static void Player_actor_sound_camera_move1(void);
|
|
static void Player_actor_sound_camera_move2();
|
|
static void Player_actor_sound_karaburi(ACTOR* actor);
|
|
static void Player_actor_sound_scoop_tree_hit(ACTOR* actor);
|
|
static void Player_actor_sound_scoop_item_hit(ACTOR* actor);
|
|
static void Player_actor_sound_axe_ball_hit(ACTOR* actor);
|
|
static void Player_actor_sound_axe_broken1(ACTOR* actor);
|
|
static void Player_actor_sound_axe_broken2(ACTOR* actor);
|
|
static void Player_actor_sound_axe_broken3(ACTOR* actor);
|
|
static void Player_actor_sound_uchiwa(ACTOR* actor);
|
|
static void Player_actor_sound_move_temochi_kazaguruma(ACTOR* actor);
|
|
|
|
static void Player_actor_set_viblation_Shake_tree(void);
|
|
|
|
static int Player_actor_Item_main(ACTOR* actorx, GAME* game);
|
|
static void Player_actor_LoadOrDestruct_Item(ACTOR* actor, int kind, int anim_idx, int mode, f32 speed, f32 morph_speed,
|
|
f32 frame);
|
|
static int Player_actor_Get_BasicItemMainIndex_fromItemKind(int kind);
|
|
|
|
static int Player_actor_CheckController_forPickup(GAME* game);
|
|
static int Player_actor_CheckController_forAxe(GAME* game);
|
|
static int Player_actor_CheckController_forNet(GAME* game);
|
|
static int Player_actor_CheckController_forRod(GAME* game);
|
|
static int Player_actor_CheckController_forScoop(GAME* game);
|
|
static int Player_actor_CheckController_forUmbrella(GAME* game);
|
|
static int Player_actor_CheckController_forFan(GAME* game, int type);
|
|
static int Player_actor_CheckController_forShake_tree(GAME* game);
|
|
static f32 Player_actor_CheckController_forStruggle_pitfall(void);
|
|
static int Player_actor_CheckController_forDush(void);
|
|
static f32 Player_actor_GetController_move_percentX(void);
|
|
static f32 Player_actor_GetController_move_percentY(void);
|
|
static f32 Player_actor_GetController_move_percentR(void);
|
|
static s16 Player_actor_GetController_move_angle(void);
|
|
static s16 Player_actor_GetController_old_move_angle(void);
|
|
static f32 Player_actor_GetController_recognize_percentR(void);
|
|
static f32 Player_actor_GetController_old_recognize_percentR(void);
|
|
static int Player_actor_CheckController_forRadio_exercise(GAME* game);
|
|
|
|
/* Common */
|
|
#include "../src/m_player_controller.c_inc"
|
|
#include "../src/m_player_vibration.c_inc"
|
|
#include "../src/m_player_common.c_inc"
|
|
#include "../src/m_player_sound.c_inc"
|
|
#include "../src/m_player_other_func.c_inc"
|
|
|
|
/* Item */
|
|
#include "../src/m_player_item_common.c_inc"
|
|
#include "../src/m_player_item_axe.c_inc"
|
|
#include "../src/m_player_item_net.c_inc"
|
|
#include "../src/m_player_item_umbrella.c_inc"
|
|
#include "../src/m_player_item_rod.c_inc"
|
|
#include "../src/m_player_item_scoop.c_inc"
|
|
#include "../src/m_player_item_balloon.c_inc"
|
|
#include "../src/m_player_item_windmill.c_inc"
|
|
#include "../src/m_player_item_fan.c_inc"
|
|
#include "../src/m_player_item.c_inc"
|
|
|
|
/* Draw */
|
|
#include "../src/m_player_draw.c_inc"
|
|
|
|
/* Main Index */
|
|
#include "../src/m_player_main_dma.c_inc"
|
|
#include "../src/m_player_main_intro.c_inc"
|
|
#include "../src/m_player_main_refuse.c_inc"
|
|
#include "../src/m_player_main_refuse_pickup.c_inc"
|
|
#include "../src/m_player_main_return_demo.c_inc"
|
|
#include "../src/m_player_main_return_outdoor.c_inc"
|
|
#include "../src/m_player_main_return_outdoor2.c_inc"
|
|
#include "../src/m_player_main_wait.c_inc"
|
|
#include "../src/m_player_main_walk.c_inc"
|
|
#include "../src/m_player_main_run.c_inc"
|
|
#include "../src/m_player_main_dash.c_inc"
|
|
#include "../src/m_player_main_tumble.c_inc"
|
|
#include "../src/m_player_main_tumble_getup.c_inc"
|
|
#include "../src/m_player_main_turn_dash.c_inc"
|
|
#include "../src/m_player_main_fall.c_inc"
|
|
#include "../src/m_player_main_wade.c_inc"
|
|
#include "../src/m_player_main_wade_snowball.c_inc"
|
|
#include "../src/m_player_main_door.c_inc"
|
|
#include "../src/m_player_main_outdoor.c_inc"
|
|
#include "../src/m_player_main_invade.c_inc"
|
|
#include "../src/m_player_main_hold.c_inc"
|
|
#include "../src/m_player_main_push.c_inc"
|
|
#include "../src/m_player_main_pull.c_inc"
|
|
#include "../src/m_player_main_rotate_furniture.c_inc"
|
|
#include "../src/m_player_main_open_furniture.c_inc"
|
|
#include "../src/m_player_main_wait_open_furniture.c_inc"
|
|
#include "../src/m_player_main_close_furniture.c_inc"
|
|
#include "../src/m_player_main_lie_bed.c_inc"
|
|
#include "../src/m_player_main_wait_bed.c_inc"
|
|
#include "../src/m_player_main_roll_bed.c_inc"
|
|
#include "../src/m_player_main_standup_bed.c_inc"
|
|
#include "../src/m_player_main_pickup.c_inc"
|
|
#include "../src/m_player_main_pickup_jump.c_inc"
|
|
#include "../src/m_player_main_pickup_furniture.c_inc"
|
|
#include "../src/m_player_main_pickup_exchange.c_inc"
|
|
#include "../src/m_player_main_sitdown.c_inc"
|
|
#include "../src/m_player_main_sitdown_wait.c_inc"
|
|
#include "../src/m_player_main_standup.c_inc"
|
|
#include "../src/m_player_main_swing_axe.c_inc"
|
|
#include "../src/m_player_main_air_axe.c_inc"
|
|
#include "../src/m_player_main_reflect_axe.c_inc"
|
|
#include "../src/m_player_main_broken_axe.c_inc"
|
|
#include "../src/m_player_main_slip_net.c_inc"
|
|
#include "../src/m_player_main_ready_net.c_inc"
|
|
#include "../src/m_player_main_ready_walk_net.c_inc"
|
|
#include "../src/m_player_main_swing_net.c_inc"
|
|
#include "../src/m_player_main_pull_net.c_inc"
|
|
#include "../src/m_player_main_stop_net.c_inc"
|
|
#include "../src/m_player_main_notice_net.c_inc"
|
|
#include "../src/m_player_main_putaway_net.c_inc"
|
|
#include "../src/m_player_main_ready_rod.c_inc"
|
|
#include "../src/m_player_main_cast_rod.c_inc"
|
|
#include "../src/m_player_main_air_rod.c_inc"
|
|
#include "../src/m_player_main_relax_rod.c_inc"
|
|
#include "../src/m_player_main_collect_rod.c_inc"
|
|
#include "../src/m_player_main_vib_rod.c_inc"
|
|
#include "../src/m_player_main_fly_rod.c_inc"
|
|
#include "../src/m_player_main_notice_rod.c_inc"
|
|
#include "../src/m_player_main_putaway_rod.c_inc"
|
|
#include "../src/m_player_main_dig_scoop.c_inc"
|
|
#include "../src/m_player_main_fill_scoop.c_inc"
|
|
#include "../src/m_player_main_reflect_scoop.c_inc"
|
|
#include "../src/m_player_main_air_scoop.c_inc"
|
|
#include "../src/m_player_main_putin_scoop.c_inc"
|
|
#include "../src/m_player_main_putaway_scoop.c_inc"
|
|
#include "../src/m_player_main_get_scoop.c_inc"
|
|
#include "../src/m_player_main_talk.c_inc"
|
|
#include "../src/m_player_main_recieve_wait.c_inc"
|
|
#include "../src/m_player_main_recieve_stretch.c_inc"
|
|
#include "../src/m_player_main_recieve.c_inc"
|
|
#include "../src/m_player_main_recieve_putaway.c_inc"
|
|
#include "../src/m_player_main_give.c_inc"
|
|
#include "../src/m_player_main_give_wait.c_inc"
|
|
#include "../src/m_player_main_takeout_item.c_inc"
|
|
#include "../src/m_player_main_putin_item.c_inc"
|
|
#include "../src/m_player_main_demo_wait.c_inc"
|
|
#include "../src/m_player_main_demo_walk.c_inc"
|
|
#include "../src/m_player_main_demo_geton_train.c_inc"
|
|
#include "../src/m_player_main_demo_geton_train_wait.c_inc"
|
|
#include "../src/m_player_main_demo_getoff_train.c_inc"
|
|
#include "../src/m_player_main_demo_standing_train.c_inc"
|
|
#include "../src/m_player_main_demo_wade.c_inc"
|
|
#include "../src/m_player_main_hide.c_inc"
|
|
#include "../src/m_player_main_groundhog.c_inc"
|
|
#include "../src/m_player_main_release_creature.c_inc"
|
|
#include "../src/m_player_main_wash_car.c_inc"
|
|
#include "../src/m_player_main_tired.c_inc"
|
|
#include "../src/m_player_main_rotate_octagon.c_inc"
|
|
#include "../src/m_player_main_throw_money.c_inc"
|
|
#include "../src/m_player_main_pray.c_inc"
|
|
#include "../src/m_player_main_shake_tree.c_inc"
|
|
#include "../src/m_player_main_mail_jump.c_inc"
|
|
#include "../src/m_player_main_mail_land.c_inc"
|
|
#include "../src/m_player_main_ready_pitfall.c_inc"
|
|
#include "../src/m_player_main_fall_pitfall.c_inc"
|
|
#include "../src/m_player_main_struggle_pitfall.c_inc"
|
|
#include "../src/m_player_main_climbup_pitfall.c_inc"
|
|
#include "../src/m_player_main_stung_bee.c_inc"
|
|
#include "../src/m_player_main_notice_bee.c_inc"
|
|
#include "../src/m_player_main_remove_grass.c_inc"
|
|
#include "../src/m_player_main_shock.c_inc"
|
|
#include "../src/m_player_main_knock_door.c_inc"
|
|
#include "../src/m_player_main_change_cloth.c_inc"
|
|
#include "../src/m_player_main_push_snowball.c_inc"
|
|
#include "../src/m_player_main_rotate_umbrella.c_inc"
|
|
#include "../src/m_player_main_complete_payment.c_inc"
|
|
#include "../src/m_player_main_fail_emu.c_inc"
|
|
#include "../src/m_player_main_stung_mosquito.c_inc"
|
|
#include "../src/m_player_main_notice_mosquito.c_inc"
|
|
#include "../src/m_player_main_demo_geton_boat.c_inc"
|
|
#include "../src/m_player_main_swing_fan.c_inc"
|
|
#include "../src/m_player_main_switch_on_lighthouse.c_inc"
|
|
#include "../src/m_player_main_radio_exercise.c_inc"
|
|
#include "../src/m_player_main_demo_geton_boat_sitdown.c_inc"
|
|
#include "../src/m_player_main_demo_geton_boat_wait.c_inc"
|
|
#include "../src/m_player_main_demo_geton_boat_wade.c_inc"
|
|
#include "../src/m_player_main_demo_getoff_boat_standup.c_inc"
|
|
#include "../src/m_player_main_demo_getoff_boat.c_inc"
|
|
#include "../src/m_player_main_demo_get_golden_item.c_inc"
|
|
#include "../src/m_player_main_demo_get_golden_item2.c_inc"
|
|
#include "../src/m_player_main_demo_get_golden_axe_wait.c_inc"
|
|
|
|
/* TODO: looks like all the c_inc files are included before the player funcs in this file based on rodata ordering */
|
|
|
|
static void Player_actor_ct_forCorect(ACTOR* actorx, GAME* game);
|
|
static void Player_actor_set_eye_pattern(ACTOR* actorx, int idx);
|
|
static void Player_actor_set_mouth_pattern(ACTOR* actorx, int idx);
|
|
static void Player_actor_Set_old_sound_frame_counter(ACTOR* actorx);
|
|
static void Player_actor_change_proc_index(ACTOR* actorx, GAME* game);
|
|
|
|
static int Player_actor_request_main_invade_all(GAME*, int);
|
|
// static int Player_actor_request_main_refuse(GAME*, int);
|
|
// static int Player_actor_request_main_return_demo_all(GAME*, int, f32, int);
|
|
// static int Player_actor_request_main_wait_all(GAME*, f32, f32, int, int);
|
|
static int Player_actor_request_main_talk_all(GAME*, ACTOR*, int, f32, int, int);
|
|
static int Player_actor_request_main_hold(GAME*, int, int, const xyz_t*, f32, int, int);
|
|
static int Player_actor_request_main_recieve_wait(GAME*, ACTOR*, int, int, mActor_name_t, int, int);
|
|
static int Player_actor_request_main_give_all(GAME*, ACTOR*, int, int, mActor_name_t, int, int, int, int);
|
|
static int Player_actor_request_main_sitdown(GAME*, int, const xyz_t*, int, int);
|
|
static int Player_actor_request_main_close_furniture(GAME*, int);
|
|
static int Player_actor_request_main_lie_bed(GAME*, int, const xyz_t*, int, int, int);
|
|
static int Player_actor_request_main_hide(GAME*, int);
|
|
static int Player_actor_request_main_groundhog(GAME*, int);
|
|
static int Player_actor_request_main_door(GAME*, const xyz_t*, s16, int, void*, int);
|
|
static int Player_actor_request_main_outdoor(GAME*, int, int, int);
|
|
static int Player_actor_request_main_wash_car_all(GAME*, const xyz_t*, const xyz_t*, s16, ACTOR*, int);
|
|
static int Player_actor_request_main_rotate_octagon_all(GAME*, ACTOR*, int, int, const xyz_t*, s16, int);
|
|
static int Player_actor_request_main_throw_money_all(GAME*, const xyz_t*, s16, int);
|
|
static int Player_actor_request_main_pray_all(GAME*, const xyz_t*, s16, int);
|
|
static int Player_actor_request_main_mail_jump_all(GAME*, const xyz_t*, s16, int);
|
|
static int Player_actor_request_main_demo_wait_all(GAME*, int, void*, int);
|
|
static int Player_actor_request_main_demo_walk_all(GAME*, f32, f32, f32, int, int);
|
|
static int Player_actor_request_main_demo_geton_train(GAME*, const xyz_t*, s16, int);
|
|
static int Player_actor_request_main_demo_getoff_train(GAME*, const xyz_t*, s16, int);
|
|
static int Player_actor_request_main_demo_standing_train_all(GAME*, int);
|
|
static int Player_actor_request_main_stung_bee_all(GAME*, int);
|
|
static int Player_actor_request_main_shock_all(GAME*, f32, s16, s8, int, int);
|
|
static int Player_actor_request_main_change_cloth_forNPC(GAME*, mActor_name_t, int);
|
|
static int Player_actor_request_main_push_snowball_all(GAME*, void*, int, int);
|
|
static int Player_actor_request_main_stung_mosquito_all(GAME*, int, int);
|
|
static int Player_actor_request_main_switch_on_lighthouse_all(GAME*, const xyz_t*, int, int);
|
|
static int Player_actor_request_main_demo_geton_boat_all(GAME*, const xyz_t*, s16, int);
|
|
static int Player_actor_request_main_demo_getoff_boat_standup_all(GAME*, const xyz_t*, s16, int);
|
|
static int Player_actor_request_main_demo_get_golden_item2_all(GAME*, int, int);
|
|
static int Player_actor_request_main_demo_get_golden_axe_wait_all(GAME*, int);
|
|
static int Player_actor_check_request_main_priority(GAME*, int);
|
|
static u32 Player_actor_get_door_label(GAME*);
|
|
static int Player_actor_Set_Item_net_catch_request_table(ACTOR*, GAME*, u32, s8, const xyz_t*, f32);
|
|
static f32 Player_actor_Get_Item_net_catch_swing_timer(ACTOR*, GAME*);
|
|
static int Player_actor_Set_Item_net_catch_request_force(ACTOR*, GAME*, u32, s8);
|
|
static void Player_actor_Set_force_position_angle(GAME*, const xyz_t*, const s_xyz*, u8);
|
|
static u8 Player_actor_Get_force_position_angle(GAME*, xyz_t*, s_xyz*);
|
|
static int Player_actor_Get_WadeEndPos(GAME*, xyz_t*);
|
|
static int Player_actor_Check_Label_main_push_snowball(GAME*, u32);
|
|
static int Player_actor_SetParam_for_push_snowball(GAME*, const xyz_t*, s16, f32);
|
|
static int Player_actor_able_submenu_request_main_index(GAME*);
|
|
static int Player_actor_check_able_change_camera_normal_index(ACTOR*);
|
|
static int Player_actor_Check_able_force_speak_label(GAME*, u32);
|
|
static int Player_actor_check_cancel_request_change_proc_index(int);
|
|
static u32 Player_actor_Get_item_net_catch_label(ACTOR*);
|
|
static int Player_actor_Change_item_net_catch_label(ACTOR*, u32, s8);
|
|
static int Player_actor_Check_StopNet(ACTOR*, xyz_t*);
|
|
static int Player_actor_Check_HitAxe(ACTOR*, xyz_t*);
|
|
static int Player_actor_Check_VibUnit_OneFrame(ACTOR*, const xyz_t*);
|
|
static int Player_actor_Check_HitScoop(ACTOR*, xyz_t*);
|
|
static int Player_actor_Check_DigScoop(ACTOR*, xyz_t*);
|
|
static int Player_actor_check_request_change_item(GAME*);
|
|
static int Player_actor_Check_RotateOctagon(GAME*);
|
|
static int Player_actor_Check_end_stung_bee(ACTOR*);
|
|
static int Player_actor_Get_status_for_bee(ACTOR*);
|
|
static int Player_actor_Set_ScrollDemo_forWade_snowball(ACTOR*, int, const xyz_t*);
|
|
static int Player_actor_Check_tree_shaken(ACTOR*, const xyz_t*);
|
|
static int Player_actor_Check_tree_shaken_little(ACTOR*, const xyz_t*);
|
|
static int Player_actor_Check_tree_shaken_big(ACTOR*, const xyz_t*);
|
|
static int Player_actor_Check_Label_main_wade_snowball(GAME*, u32);
|
|
static int Player_actor_GetSnowballPos_forWadeSnowball(ACTOR*, xyz_t*);
|
|
static int Player_actor_CheckCondition_forWadeSnowball(GAME*, const xyz_t*, s16);
|
|
static mActor_name_t Player_actor_Get_itemNo_forWindow(ACTOR*);
|
|
static int Player_actor_check_cancel_event_without_priority(GAME*);
|
|
static int Player_actor_CheckScene_AbleSubmenu(void);
|
|
static int Player_actor_Check_stung_mosquito(GAME*, u32);
|
|
|
|
static int Player_actor_request_main_walk_all(GAME*, xyz_t*, f32, int, int);
|
|
static int Player_actor_request_main_run_all(GAME*, f32, int, int);
|
|
static int Player_actor_request_main_dash_all(GAME*, f32, int, int);
|
|
|
|
// static void Player_actor_Refuse_pickup_demo_ct(ACTOR*);
|
|
|
|
static void Player_actor_init_value(ACTOR* actorx, GAME* game) {
|
|
PLAYER_ACTOR* player = (PLAYER_ACTOR*)actorx;
|
|
GAME_PLAY* play = (GAME_PLAY*)game;
|
|
int* shake_tree_table_ut_x_p;
|
|
int* shake_tree_table_ut_z_p;
|
|
s8* radio_exercise_command_ring_buffer_p;
|
|
int i;
|
|
|
|
player->actor_class.gravity = -1.0f;
|
|
player->actor_class.max_velocity_y = -8.0f;
|
|
player->actor_class.scale.x = 0.01f;
|
|
player->actor_class.scale.y = 0.01f;
|
|
player->actor_class.scale.z = 0.01f;
|
|
player->balloon_actor = Actor_info_make_actor(&play->actor_info, game, mAc_PROFILE_BALLOON,
|
|
actorx->world.position.x, actorx->world.position.y,
|
|
actorx->world.position.z, 0, 0, 0, -1, -1, -1, EMPTY_NO, -1, -1, -1);
|
|
player->animation0_idx = -1;
|
|
player->animation1_idx = -1;
|
|
player->part_table_idx = -1;
|
|
player->item_shape_type[0] = -1;
|
|
player->item_shape_type[1] = -1;
|
|
player->item_shape_type[2] = -1;
|
|
player->item_shape_type[3] = -1;
|
|
|
|
Player_actor_ct_forCorect(actorx, game);
|
|
Player_actor_set_eye_pattern(actorx, 0);
|
|
Player_actor_set_mouth_pattern(actorx, 0);
|
|
|
|
player->request_main_invade_all_proc = &Player_actor_request_main_invade_all;
|
|
player->request_main_refuse_all_proc = &Player_actor_request_main_refuse;
|
|
player->request_main_return_demo_all_proc = &Player_actor_request_main_return_demo_all;
|
|
player->request_main_wait_all_proc = &Player_actor_request_main_wait_all;
|
|
player->request_main_talk_all_proc = &Player_actor_request_main_talk_all;
|
|
player->request_main_hold_all_proc = &Player_actor_request_main_hold;
|
|
player->request_main_recieve_wait_all_proc = &Player_actor_request_main_recieve_wait;
|
|
player->request_main_give_all_proc = &Player_actor_request_main_give_all;
|
|
player->request_main_sitdown_all_proc = &Player_actor_request_main_sitdown;
|
|
player->request_main_close_furniture_all_proc = &Player_actor_request_main_close_furniture;
|
|
player->request_main_lie_bed_all_proc = &Player_actor_request_main_lie_bed;
|
|
player->request_main_hide_all_proc = &Player_actor_request_main_hide;
|
|
player->request_main_groundhog_proc = &Player_actor_request_main_groundhog;
|
|
player->request_main_door_all_proc = &Player_actor_request_main_door;
|
|
player->request_main_outdoor_all_proc = &Player_actor_request_main_outdoor;
|
|
player->request_main_demo_wait_all_proc = &Player_actor_request_main_demo_wait_all;
|
|
player->request_main_demo_walk_all_proc = &Player_actor_request_main_demo_walk_all;
|
|
player->request_main_demo_geton_train_all_proc = &Player_actor_request_main_demo_geton_train;
|
|
player->request_main_demo_getoff_train_all_proc = &Player_actor_request_main_demo_getoff_train;
|
|
player->request_main_demo_standing_train_all_proc = &Player_actor_request_main_demo_standing_train_all;
|
|
player->request_main_rotate_octagon_all_proc = &Player_actor_request_main_rotate_octagon_all;
|
|
player->request_main_wash_car_all_proc = &Player_actor_request_main_wash_car_all;
|
|
player->request_main_throw_money_all_proc = &Player_actor_request_main_throw_money_all;
|
|
player->request_main_pray_all_proc = &Player_actor_request_main_pray_all;
|
|
player->request_main_mail_jump_all_proc = &Player_actor_request_main_mail_jump_all;
|
|
player->request_main_stung_bee_all_proc = &Player_actor_request_main_stung_bee_all;
|
|
player->request_main_shock_all_proc = &Player_actor_request_main_shock_all;
|
|
player->request_main_change_cloth_forNPC_proc = &Player_actor_request_main_change_cloth_forNPC;
|
|
player->request_main_push_snowball_all_proc = &Player_actor_request_main_push_snowball_all;
|
|
player->request_main_stung_mosquito_all_proc = &Player_actor_request_main_stung_mosquito_all;
|
|
player->request_main_switch_on_lighthouse_all_proc = &Player_actor_request_main_switch_on_lighthouse_all;
|
|
player->request_main_demo_geton_boat_all_proc = &Player_actor_request_main_demo_geton_boat_all;
|
|
player->request_main_demo_getoff_boat_standup_all_proc = &Player_actor_request_main_demo_getoff_boat_standup_all;
|
|
player->request_main_demo_get_golden_item2_all_proc = &Player_actor_request_main_demo_get_golden_item2_all;
|
|
player->request_main_demo_get_golden_axe_wait_all_proc = &Player_actor_request_main_demo_get_golden_axe_wait_all;
|
|
player->check_request_main_priority_proc = &Player_actor_check_request_main_priority;
|
|
player->get_door_label_proc = &Player_actor_get_door_label;
|
|
player->Set_Item_net_catch_request_table_proc = &Player_actor_Set_Item_net_catch_request_table;
|
|
player->Set_Item_net_catch_request_force_proc = &Player_actor_Set_Item_net_catch_request_force;
|
|
player->Get_Item_net_catch_swing_timer_proc = &Player_actor_Get_Item_net_catch_swing_timer;
|
|
player->Set_force_position_angle_proc = &Player_actor_Set_force_position_angle;
|
|
player->Get_force_position_angle_proc = &Player_actor_Get_force_position_angle;
|
|
player->Get_WadeEndPos_proc = &Player_actor_Get_WadeEndPos;
|
|
player->check_cancel_request_change_proc_index_proc = &Player_actor_check_cancel_request_change_proc_index;
|
|
player->Get_item_net_catch_label_proc = &Player_actor_Get_item_net_catch_label;
|
|
player->Check_StopNet_proc = &Player_actor_Check_StopNet;
|
|
player->Check_HitAxe_proc = &Player_actor_Check_HitAxe;
|
|
player->Check_VibUnit_OneFrame_proc = &Player_actor_Check_VibUnit_OneFrame;
|
|
player->Check_HitScoop_proc = &Player_actor_Check_HitScoop;
|
|
player->Check_DigScoop_proc = &Player_actor_Check_DigScoop;
|
|
player->check_request_change_item_proc = &Player_actor_check_request_change_item;
|
|
player->Check_RotateOctagon_proc = &Player_actor_Check_RotateOctagon;
|
|
player->Change_item_net_catch_label_proc = &Player_actor_Change_item_net_catch_label;
|
|
player->Get_status_for_bee_proc = &Player_actor_Get_status_for_bee;
|
|
player->Check_end_stung_bee_proc = &Player_actor_Check_end_stung_bee;
|
|
player->Check_Label_main_push_snowball_proc = &Player_actor_Check_Label_main_push_snowball;
|
|
player->Check_Label_main_wade_snowball_proc = &Player_actor_Check_Label_main_wade_snowball;
|
|
player->SetParam_for_push_snowball_proc = &Player_actor_SetParam_for_push_snowball;
|
|
player->Set_ScrollDemo_forWade_snowball_proc = &Player_actor_Set_ScrollDemo_forWade_snowball;
|
|
player->GetSnowballPos_forWadeSnowball_proc = &Player_actor_GetSnowballPos_forWadeSnowball;
|
|
player->CheckCondition_forWadeSnowball_proc = &Player_actor_CheckCondition_forWadeSnowball;
|
|
player->Check_tree_shaken_proc = &Player_actor_Check_tree_shaken;
|
|
player->Check_tree_shaken_little_proc = &Player_actor_Check_tree_shaken_little;
|
|
player->Check_tree_shaken_big_proc = &Player_actor_Check_tree_shaken_big;
|
|
player->Get_itemNo_forWindow_proc = &Player_actor_Get_itemNo_forWindow;
|
|
player->able_submenu_request_main_index_proc = &Player_actor_able_submenu_request_main_index;
|
|
player->check_able_change_camera_normal_index_proc = &Player_actor_check_able_change_camera_normal_index;
|
|
player->CheckScene_AbleSubmenu_proc = &Player_actor_CheckScene_AbleSubmenu;
|
|
player->check_cancel_event_without_priority_proc = &Player_actor_check_cancel_event_without_priority;
|
|
player->Check_able_force_speak_label_proc = &Player_actor_Check_able_force_speak_label;
|
|
player->Check_stung_mosquito_proc = &Player_actor_Check_stung_mosquito;
|
|
|
|
shake_tree_table_ut_x_p = player->shake_tree_ut_x;
|
|
shake_tree_table_ut_z_p = player->shake_tree_ut_z;
|
|
for (i = 0; i < 3; i++) {
|
|
*shake_tree_table_ut_x_p++ = -1;
|
|
*shake_tree_table_ut_z_p++ = -1;
|
|
}
|
|
|
|
radio_exercise_command_ring_buffer_p = player->radio_exercise_command_ring_buffer;
|
|
for (i = 0; i < 8; i++) {
|
|
*radio_exercise_command_ring_buffer_p++ = -1;
|
|
}
|
|
|
|
Player_actor_Set_old_sound_frame_counter(actorx);
|
|
}
|
|
|
|
extern void Player_actor_ct(ACTOR* actorx, GAME* game) {
|
|
GAME_PLAY* play = (GAME_PLAY*)game;
|
|
|
|
if (mEv_CheckTitleDemo() > 0) {
|
|
actorx->status_data.weight = 255;
|
|
} else {
|
|
actorx->status_data.weight = 50;
|
|
}
|
|
|
|
Player_actor_init_value(actorx, game);
|
|
Common_Set(player_actor_exists, TRUE);
|
|
Player_actor_Check_player_sunburn_for_ct(actorx); //
|
|
mPlib_change_player_face(game); //
|
|
Player_actor_ct_other_func1(actorx, game); //
|
|
Player_actor_set_eye_PositionAndAngle(actorx); //
|
|
Camera2_request_main_normal(play, 1, 1);
|
|
Shape_Info_init(actorx, 0.0f, &mAc_ActorShadowCircle, 18.0f, 18.0f);
|
|
actorx->shape_info.ofs_y = 200.0f;
|
|
mPlib_Clear_change_data_from_submenu(); //
|
|
Player_actor_request_main_dma(game, 41); //
|
|
Player_actor_change_proc_index(actorx, game); //
|
|
}
|
|
|
|
extern void Player_actor_dt(ACTOR* actorx, GAME* game) {
|
|
PLAYER_ACTOR* player = (PLAYER_ACTOR*)actorx;
|
|
|
|
Player_actor_dt_forCorect(actorx, game); //
|
|
Common_Set(player_actor_exists, FALSE);
|
|
mPlib_cancel_player_warp_forEvent(); //
|
|
Player_actor_Reset_bee_chase(actorx); //
|
|
Player_actor_Check_player_sunburn_for_dt(actorx); //
|
|
|
|
if (mEv_CheckTitleDemo() <= 0 && player->bgm_volume_mode != mPlayer_BGM_VOLUME_MODE_NORMAL) {
|
|
switch (player->bgm_volume_mode) {
|
|
case mPlayer_BGM_VOLUME_MODE_COLLECT_INSECTS:
|
|
mBGMPsComp_volume_collect_insects_end();
|
|
break;
|
|
case mPlayer_BGM_VOLUME_MODE_FISHING:
|
|
mBGMPsComp_volume_fishing_end();
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
typedef void (*mPlayer_REQUEST_MAIN_CHANGE_FROM_SUBMENU_PROC)(ACTOR*, GAME*);
|
|
|
|
// static void Player_actor_request_main_wait_from_submenu(ACTOR*, GAME*);
|
|
static void Player_actor_request_main_putin_scoop_from_submenu(ACTOR*, GAME*);
|
|
static void Player_actor_request_main_give_from_submenu(ACTOR*, GAME*);
|
|
static void Player_actor_request_main_demo_wait_from_submenu(ACTOR*, GAME*);
|
|
static void Player_actor_request_main_release_creature_from_submenu(ACTOR*, GAME*);
|
|
static void Player_actor_request_main_mail_land_from_submenu(ACTOR*, GAME*);
|
|
static void Player_actor_request_main_demo_get_golden_item_from_submenu(ACTOR*, GAME*);
|
|
|
|
static void Player_actor_request_main_change_from_submenu(ACTOR* actorx, GAME* game) {
|
|
static const mPlayer_REQUEST_MAIN_CHANGE_FROM_SUBMENU_PROC proc[] = {
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_request_main_wait_from_submenu,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_request_main_putin_scoop_from_submenu,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_request_main_give_from_submenu,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_request_main_demo_wait_from_submenu,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_request_main_release_creature_from_submenu,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_request_main_mail_land_from_submenu,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_request_main_demo_get_golden_item_from_submenu,
|
|
NULL,
|
|
NULL,
|
|
};
|
|
|
|
if (mPlib_Check_SetOrderSubmenu()) {
|
|
mPlayer_change_data_from_submenu_c* data = mPlib_Get_change_data_from_submenu_p();
|
|
int idx = data->requested_main_index;
|
|
|
|
if (mPlayer_MAIN_INDEX_VALID(idx) == FALSE || proc[idx] == NULL) {
|
|
return;
|
|
}
|
|
|
|
(*proc[idx])(actorx, game);
|
|
}
|
|
|
|
mPlib_Clear_change_data_from_submenu();
|
|
}
|
|
|
|
static void Player_actor_request_change_item(GAME* game) {
|
|
int item_kind = Player_actor_check_request_change_item(game);
|
|
|
|
switch (item_kind) {
|
|
case mPlayer_ITEM_KIND_AXE_USE_7:
|
|
Player_actor_request_main_wait_all(game, 0.0f, 0.0f, 1, 16);
|
|
break;
|
|
case mPlayer_ITEM_KIND_GOLD_AXE:
|
|
Player_actor_request_main_walk_all(game, NULL, 0.0f, 1, 16);
|
|
break;
|
|
case mPlayer_ITEM_KIND_NET:
|
|
Player_actor_request_main_run_all(game, 0.0f, 1, 16);
|
|
break;
|
|
case mPlayer_ITEM_KIND_GOLD_NET:
|
|
Player_actor_request_main_dash_all(game, 0.0f, 1, 16);
|
|
break;
|
|
}
|
|
}
|
|
|
|
typedef void (*mPlayer_SETTLE_MAIN_PROC)(ACTOR*, GAME*);
|
|
|
|
static void Player_actor_settle_main_Walk(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Turn_dash(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Wade(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Outdoor(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Push(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Pull(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Open_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Wait_open_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Close_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Lie_bed(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Roll_bed(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Standup_bed(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Pickup_jump(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Pickup_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Pickup_exchange(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Sitdown(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Standup(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Reflect_axe(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Broken_axe(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Slip_net(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Swing_net(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Notice_net(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Collect_rod(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Fly_rod(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Notice_rod(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Reflect_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Get_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Talk(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Recieve_putaway(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Give_wait(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Takeout_item(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_wait(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_geton_train(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_getoff_train(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_wade(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Release_creature(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Wash_car(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Rotate_octagon(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Throw_money(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Pray(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Mail_jump(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Ready_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Fall_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Struggle_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Climbup_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Notice_bee(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Shock(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Knock_door(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Wade_snowball(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Complete_payment(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Fail_emu(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Notice_mosquito(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Switch_on_lighthouse(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Radio_exercise(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_geton_boat(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_geton_boat_wade(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_getoff_boat_standup(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_getoff_boat(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_get_golden_item(ACTOR*, GAME*);
|
|
static void Player_actor_settle_main_Demo_get_golden_item2(ACTOR*, GAME*);
|
|
|
|
static void Player_actor_settle_main(ACTOR* actorx, GAME* game) {
|
|
static const mPlayer_SETTLE_MAIN_PROC proc[] = {
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Walk,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Turn_dash,
|
|
NULL,
|
|
&Player_actor_settle_main_Wade,
|
|
NULL,
|
|
&Player_actor_settle_main_Outdoor,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Push,
|
|
&Player_actor_settle_main_Pull,
|
|
NULL,
|
|
&Player_actor_settle_main_Open_furniture,
|
|
&Player_actor_settle_main_Wait_open_furniture,
|
|
&Player_actor_settle_main_Close_furniture,
|
|
&Player_actor_settle_main_Lie_bed,
|
|
NULL,
|
|
&Player_actor_settle_main_Roll_bed,
|
|
&Player_actor_settle_main_Standup_bed,
|
|
NULL,
|
|
&Player_actor_settle_main_Pickup_jump,
|
|
&Player_actor_settle_main_Pickup_furniture,
|
|
&Player_actor_settle_main_Pickup_exchange,
|
|
&Player_actor_settle_main_Sitdown,
|
|
NULL,
|
|
&Player_actor_settle_main_Standup,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Reflect_axe,
|
|
&Player_actor_settle_main_Broken_axe,
|
|
&Player_actor_settle_main_Slip_net,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Swing_net,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Notice_net,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Collect_rod,
|
|
NULL,
|
|
&Player_actor_settle_main_Fly_rod,
|
|
&Player_actor_settle_main_Notice_rod,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Reflect_scoop,
|
|
NULL,
|
|
&Player_actor_settle_main_Get_scoop,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Talk,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Recieve_putaway,
|
|
NULL,
|
|
&Player_actor_settle_main_Give_wait,
|
|
&Player_actor_settle_main_Takeout_item,
|
|
NULL,
|
|
&Player_actor_settle_main_Demo_wait,
|
|
NULL,
|
|
&Player_actor_settle_main_Demo_geton_train,
|
|
NULL,
|
|
&Player_actor_settle_main_Demo_getoff_train,
|
|
NULL,
|
|
&Player_actor_settle_main_Demo_wade,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Release_creature,
|
|
&Player_actor_settle_main_Wash_car,
|
|
NULL,
|
|
&Player_actor_settle_main_Rotate_octagon,
|
|
&Player_actor_settle_main_Throw_money,
|
|
&Player_actor_settle_main_Pray,
|
|
NULL,
|
|
&Player_actor_settle_main_Mail_jump,
|
|
NULL,
|
|
&Player_actor_settle_main_Ready_pitfall,
|
|
&Player_actor_settle_main_Fall_pitfall,
|
|
&Player_actor_settle_main_Struggle_pitfall,
|
|
&Player_actor_settle_main_Climbup_pitfall,
|
|
NULL,
|
|
&Player_actor_settle_main_Notice_bee,
|
|
NULL,
|
|
&Player_actor_settle_main_Shock,
|
|
&Player_actor_settle_main_Knock_door,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Wade_snowball,
|
|
&Player_actor_settle_main_Complete_payment,
|
|
&Player_actor_settle_main_Fail_emu,
|
|
NULL,
|
|
&Player_actor_settle_main_Notice_mosquito,
|
|
NULL,
|
|
&Player_actor_settle_main_Switch_on_lighthouse,
|
|
&Player_actor_settle_main_Radio_exercise,
|
|
&Player_actor_settle_main_Demo_geton_boat,
|
|
NULL,
|
|
NULL,
|
|
&Player_actor_settle_main_Demo_geton_boat_wade,
|
|
&Player_actor_settle_main_Demo_getoff_boat_standup,
|
|
&Player_actor_settle_main_Demo_getoff_boat,
|
|
&Player_actor_settle_main_Demo_get_golden_item,
|
|
&Player_actor_settle_main_Demo_get_golden_item2,
|
|
NULL,
|
|
};
|
|
|
|
PLAYER_ACTOR* player = (PLAYER_ACTOR*)actorx;
|
|
int idx = player->now_main_index;
|
|
|
|
if (mPlayer_MAIN_INDEX_VALID(idx) != FALSE) {
|
|
if (proc[idx] != NULL) {
|
|
(*proc[idx])(actorx, game);
|
|
}
|
|
|
|
Player_actor_settle_main_other_func2(actorx, game); //
|
|
}
|
|
}
|
|
|
|
typedef void (*mPlayer_SETUP_MAIN_PROC)(ACTOR*, GAME*);
|
|
|
|
static void Player_actor_setup_main_Dma(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Intro(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Refuse(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Refuse_pickup(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Return_demo(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Return_outdoor(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Return_outdoor2(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Wait(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Walk(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Run(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Dash(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Tumble(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Tumble_getup(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Turn_dash(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Fall(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Wade(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Door(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Outdoor(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Invade(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Hold(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Push(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Pull(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Rotate_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Open_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Wait_open_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Close_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Lie_bed(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Wait_bed(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Roll_bed(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Standup_bed(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Pickup(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Pickup_jump(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Pickup_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Pickup_exchange(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Sitdown(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Sitdown_wait(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Standup(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Swing_axe(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Air_axe(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Reflect_axe(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Broken_axe(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Slip_net(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Ready_net(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Ready_walk_net(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Swing_net(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Pull_net(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Stop_net(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Notice_net(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Putaway_net(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Ready_rod(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Cast_rod(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Air_rod(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Relax_rod(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Collect_rod(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Vib_rod(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Fly_rod(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Notice_rod(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Putaway_rod(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Dig_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Fill_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Reflect_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Air_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Get_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Putaway_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Putin_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Talk(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Recieve_wait(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Recieve_stretch(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Recieve(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Recieve_putaway(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Give(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Give_wait(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Takeout_item(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Putin_item(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_wait(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_walk(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_geton_train(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_geton_train_wait(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_getoff_train(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_standing_train(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_wade(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Hide(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Groundhog(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Release_creature(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Wash_car(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Tired(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Rotate_octagon(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Throw_money(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Pray(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Shake_tree(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Mail_jump(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Mail_land(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Ready_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Fall_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Struggle_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Climbup_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Stung_bee(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Notice_bee(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Remove_grass(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Shock(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Knock_door(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Change_cloth(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Push_snowball(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Rotate_umbrella(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Wade_snowball(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Complete_payment(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Fail_emu(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Stung_mosquito(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Notice_mosquito(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Swing_fan(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Switch_on_lighthouse(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Radio_exercise(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_geton_boat(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_geton_boat_sitdown(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_geton_boat_wait(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_geton_boat_wade(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_getoff_boat_standup(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_getoff_boat(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_get_golden_item(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_get_golden_item2(ACTOR*, GAME*);
|
|
static void Player_actor_setup_main_Demo_get_golden_axe_wait(ACTOR*, GAME*);
|
|
|
|
static int Player_actor_change_main_index(ACTOR* actorx, GAME* game) {
|
|
static const mPlayer_SETUP_MAIN_PROC proc[] = {
|
|
&Player_actor_setup_main_Dma,
|
|
&Player_actor_setup_main_Intro,
|
|
&Player_actor_setup_main_Refuse,
|
|
&Player_actor_setup_main_Refuse_pickup,
|
|
&Player_actor_setup_main_Return_demo,
|
|
&Player_actor_setup_main_Return_outdoor,
|
|
&Player_actor_setup_main_Return_outdoor2,
|
|
&Player_actor_setup_main_Wait,
|
|
&Player_actor_setup_main_Walk,
|
|
&Player_actor_setup_main_Run,
|
|
&Player_actor_setup_main_Dash,
|
|
&Player_actor_setup_main_Tumble,
|
|
&Player_actor_setup_main_Tumble_getup,
|
|
&Player_actor_setup_main_Turn_dash,
|
|
&Player_actor_setup_main_Fall,
|
|
&Player_actor_setup_main_Wade,
|
|
&Player_actor_setup_main_Door,
|
|
&Player_actor_setup_main_Outdoor,
|
|
&Player_actor_setup_main_Invade,
|
|
&Player_actor_setup_main_Hold,
|
|
&Player_actor_setup_main_Push,
|
|
&Player_actor_setup_main_Pull,
|
|
&Player_actor_setup_main_Rotate_furniture,
|
|
&Player_actor_setup_main_Open_furniture,
|
|
&Player_actor_setup_main_Wait_open_furniture,
|
|
&Player_actor_setup_main_Close_furniture,
|
|
&Player_actor_setup_main_Lie_bed,
|
|
&Player_actor_setup_main_Wait_bed,
|
|
&Player_actor_setup_main_Roll_bed,
|
|
&Player_actor_setup_main_Standup_bed,
|
|
&Player_actor_setup_main_Pickup,
|
|
&Player_actor_setup_main_Pickup_jump,
|
|
&Player_actor_setup_main_Pickup_furniture,
|
|
&Player_actor_setup_main_Pickup_exchange,
|
|
&Player_actor_setup_main_Sitdown,
|
|
&Player_actor_setup_main_Sitdown_wait,
|
|
&Player_actor_setup_main_Standup,
|
|
&Player_actor_setup_main_Swing_axe,
|
|
&Player_actor_setup_main_Air_axe,
|
|
&Player_actor_setup_main_Reflect_axe,
|
|
&Player_actor_setup_main_Broken_axe,
|
|
&Player_actor_setup_main_Slip_net,
|
|
&Player_actor_setup_main_Ready_net,
|
|
&Player_actor_setup_main_Ready_walk_net,
|
|
&Player_actor_setup_main_Swing_net,
|
|
&Player_actor_setup_main_Pull_net,
|
|
&Player_actor_setup_main_Stop_net,
|
|
&Player_actor_setup_main_Notice_net,
|
|
&Player_actor_setup_main_Putaway_net,
|
|
&Player_actor_setup_main_Ready_rod,
|
|
&Player_actor_setup_main_Cast_rod,
|
|
&Player_actor_setup_main_Air_rod,
|
|
&Player_actor_setup_main_Relax_rod,
|
|
&Player_actor_setup_main_Collect_rod,
|
|
&Player_actor_setup_main_Vib_rod,
|
|
&Player_actor_setup_main_Fly_rod,
|
|
&Player_actor_setup_main_Notice_rod,
|
|
&Player_actor_setup_main_Putaway_rod,
|
|
&Player_actor_setup_main_Dig_scoop,
|
|
&Player_actor_setup_main_Fill_scoop,
|
|
&Player_actor_setup_main_Reflect_scoop,
|
|
&Player_actor_setup_main_Air_scoop,
|
|
&Player_actor_setup_main_Get_scoop,
|
|
&Player_actor_setup_main_Putaway_scoop,
|
|
&Player_actor_setup_main_Putin_scoop,
|
|
&Player_actor_setup_main_Talk,
|
|
&Player_actor_setup_main_Recieve_wait,
|
|
&Player_actor_setup_main_Recieve_stretch,
|
|
&Player_actor_setup_main_Recieve,
|
|
&Player_actor_setup_main_Recieve_putaway,
|
|
&Player_actor_setup_main_Give,
|
|
&Player_actor_setup_main_Give_wait,
|
|
&Player_actor_setup_main_Takeout_item,
|
|
&Player_actor_setup_main_Putin_item,
|
|
&Player_actor_setup_main_Demo_wait,
|
|
&Player_actor_setup_main_Demo_walk,
|
|
&Player_actor_setup_main_Demo_geton_train,
|
|
&Player_actor_setup_main_Demo_geton_train_wait,
|
|
&Player_actor_setup_main_Demo_getoff_train,
|
|
&Player_actor_setup_main_Demo_standing_train,
|
|
&Player_actor_setup_main_Demo_wade,
|
|
&Player_actor_setup_main_Hide,
|
|
&Player_actor_setup_main_Groundhog,
|
|
&Player_actor_setup_main_Release_creature,
|
|
&Player_actor_setup_main_Wash_car,
|
|
&Player_actor_setup_main_Tired,
|
|
&Player_actor_setup_main_Rotate_octagon,
|
|
&Player_actor_setup_main_Throw_money,
|
|
&Player_actor_setup_main_Pray,
|
|
&Player_actor_setup_main_Shake_tree,
|
|
&Player_actor_setup_main_Mail_jump,
|
|
&Player_actor_setup_main_Mail_land,
|
|
&Player_actor_setup_main_Ready_pitfall,
|
|
&Player_actor_setup_main_Fall_pitfall,
|
|
&Player_actor_setup_main_Struggle_pitfall,
|
|
&Player_actor_setup_main_Climbup_pitfall,
|
|
&Player_actor_setup_main_Stung_bee,
|
|
&Player_actor_setup_main_Notice_bee,
|
|
&Player_actor_setup_main_Remove_grass,
|
|
&Player_actor_setup_main_Shock,
|
|
&Player_actor_setup_main_Knock_door,
|
|
&Player_actor_setup_main_Change_cloth,
|
|
&Player_actor_setup_main_Push_snowball,
|
|
&Player_actor_setup_main_Rotate_umbrella,
|
|
&Player_actor_setup_main_Wade_snowball,
|
|
&Player_actor_setup_main_Complete_payment,
|
|
&Player_actor_setup_main_Fail_emu,
|
|
&Player_actor_setup_main_Stung_mosquito,
|
|
&Player_actor_setup_main_Notice_mosquito,
|
|
&Player_actor_setup_main_Swing_fan,
|
|
&Player_actor_setup_main_Switch_on_lighthouse,
|
|
&Player_actor_setup_main_Radio_exercise,
|
|
&Player_actor_setup_main_Demo_geton_boat,
|
|
&Player_actor_setup_main_Demo_geton_boat_sitdown,
|
|
&Player_actor_setup_main_Demo_geton_boat_wait,
|
|
&Player_actor_setup_main_Demo_geton_boat_wade,
|
|
&Player_actor_setup_main_Demo_getoff_boat_standup,
|
|
&Player_actor_setup_main_Demo_getoff_boat,
|
|
&Player_actor_setup_main_Demo_get_golden_item,
|
|
&Player_actor_setup_main_Demo_get_golden_item2,
|
|
&Player_actor_setup_main_Demo_get_golden_axe_wait,
|
|
};
|
|
PLAYER_ACTOR* player = (PLAYER_ACTOR*)actorx;
|
|
|
|
if (player->requested_main_index_changed) {
|
|
int idx = player->requested_main_index;
|
|
|
|
if (mPlayer_MAIN_INDEX_VALID(idx) == FALSE || proc[idx] == NULL) {
|
|
return FALSE;
|
|
}
|
|
|
|
idx = Player_actor_CheckAndRequest_KnockDoor(actorx, game,
|
|
Player_actor_CheckAndRequest_ItemInOut(actorx, game, idx)); //
|
|
Player_actor_Set_bgm_volume(actorx, idx); //
|
|
Player_actor_settle_main(actorx, game);
|
|
Player_actor_Reset_unable_hand_item_in_demo(actorx, idx); //
|
|
Player_actor_Reset_able_hand_all_item_in_demo(actorx, idx); //
|
|
Player_actor_Reset_able_force_speak_label(actorx, idx); //
|
|
Player_actor_change_main_index_other_func1(actorx, game); //
|
|
(*proc[idx])(actorx, game);
|
|
Player_actor_change_main_index_other_func2(actorx, game); //
|
|
return TRUE;
|
|
}
|
|
|
|
return FALSE;
|
|
}
|
|
|
|
static void Player_actor_change_proc_index(ACTOR* actorx, GAME* game) {
|
|
PLAYER_ACTOR* player = (PLAYER_ACTOR*)actorx;
|
|
|
|
player->changed_main_index = Player_actor_change_main_index(actorx, game);
|
|
}
|
|
|
|
typedef void (*mPlayer_MAIN_PROC)(ACTOR*, GAME*);
|
|
|
|
static void Player_actor_main_Dma(ACTOR*, GAME*);
|
|
static void Player_actor_main_Intro(ACTOR*, GAME*);
|
|
static void Player_actor_main_Refuse(ACTOR*, GAME*);
|
|
static void Player_actor_main_Refuse_pickup(ACTOR*, GAME*);
|
|
static void Player_actor_main_Return_demo(ACTOR*, GAME*);
|
|
static void Player_actor_main_Return_outdoor(ACTOR*, GAME*);
|
|
static void Player_actor_main_Return_outdoor2(ACTOR*, GAME*);
|
|
static void Player_actor_main_Wait(ACTOR*, GAME*);
|
|
static void Player_actor_main_Walk(ACTOR*, GAME*);
|
|
static void Player_actor_main_Run(ACTOR*, GAME*);
|
|
static void Player_actor_main_Dash(ACTOR*, GAME*);
|
|
static void Player_actor_main_Tumble(ACTOR*, GAME*);
|
|
static void Player_actor_main_Tumble_getup(ACTOR*, GAME*);
|
|
static void Player_actor_main_Turn_dash(ACTOR*, GAME*);
|
|
static void Player_actor_main_Fall(ACTOR*, GAME*);
|
|
static void Player_actor_main_Wade(ACTOR*, GAME*);
|
|
static void Player_actor_main_Door(ACTOR*, GAME*);
|
|
static void Player_actor_main_Outdoor(ACTOR*, GAME*);
|
|
static void Player_actor_main_Invade(ACTOR*, GAME*);
|
|
static void Player_actor_main_Hold(ACTOR*, GAME*);
|
|
static void Player_actor_main_Push(ACTOR*, GAME*);
|
|
static void Player_actor_main_Pull(ACTOR*, GAME*);
|
|
static void Player_actor_main_Rotate_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_main_Open_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_main_Wait_open_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_main_Close_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_main_Lie_bed(ACTOR*, GAME*);
|
|
static void Player_actor_main_Wait_bed(ACTOR*, GAME*);
|
|
static void Player_actor_main_Roll_bed(ACTOR*, GAME*);
|
|
static void Player_actor_main_Standup_bed(ACTOR*, GAME*);
|
|
static void Player_actor_main_Pickup(ACTOR*, GAME*);
|
|
static void Player_actor_main_Pickup_jump(ACTOR*, GAME*);
|
|
static void Player_actor_main_Pickup_furniture(ACTOR*, GAME*);
|
|
static void Player_actor_main_Pickup_exchange(ACTOR*, GAME*);
|
|
static void Player_actor_main_Sitdown(ACTOR*, GAME*);
|
|
static void Player_actor_main_Sitdown_wait(ACTOR*, GAME*);
|
|
static void Player_actor_main_Standup(ACTOR*, GAME*);
|
|
static void Player_actor_main_Swing_axe(ACTOR*, GAME*);
|
|
static void Player_actor_main_Air_axe(ACTOR*, GAME*);
|
|
static void Player_actor_main_Reflect_axe(ACTOR*, GAME*);
|
|
static void Player_actor_main_Broken_axe(ACTOR*, GAME*);
|
|
static void Player_actor_main_Slip_net(ACTOR*, GAME*);
|
|
static void Player_actor_main_Ready_net(ACTOR*, GAME*);
|
|
static void Player_actor_main_Ready_walk_net(ACTOR*, GAME*);
|
|
static void Player_actor_main_Swing_net(ACTOR*, GAME*);
|
|
static void Player_actor_main_Pull_net(ACTOR*, GAME*);
|
|
static void Player_actor_main_Stop_net(ACTOR*, GAME*);
|
|
static void Player_actor_main_Notice_net(ACTOR*, GAME*);
|
|
static void Player_actor_main_Putaway_net(ACTOR*, GAME*);
|
|
static void Player_actor_main_Ready_rod(ACTOR*, GAME*);
|
|
static void Player_actor_main_Cast_rod(ACTOR*, GAME*);
|
|
static void Player_actor_main_Air_rod(ACTOR*, GAME*);
|
|
static void Player_actor_main_Relax_rod(ACTOR*, GAME*);
|
|
static void Player_actor_main_Collect_rod(ACTOR*, GAME*);
|
|
static void Player_actor_main_Vib_rod(ACTOR*, GAME*);
|
|
static void Player_actor_main_Fly_rod(ACTOR*, GAME*);
|
|
static void Player_actor_main_Notice_rod(ACTOR*, GAME*);
|
|
static void Player_actor_main_Putaway_rod(ACTOR*, GAME*);
|
|
static void Player_actor_main_Dig_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_main_Fill_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_main_Reflect_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_main_Air_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_main_Get_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_main_Putaway_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_main_Putin_scoop(ACTOR*, GAME*);
|
|
static void Player_actor_main_Talk(ACTOR*, GAME*);
|
|
static void Player_actor_main_Recieve_wait(ACTOR*, GAME*);
|
|
static void Player_actor_main_Recieve_stretch(ACTOR*, GAME*);
|
|
static void Player_actor_main_Recieve(ACTOR*, GAME*);
|
|
static void Player_actor_main_Recieve_putaway(ACTOR*, GAME*);
|
|
static void Player_actor_main_Give(ACTOR*, GAME*);
|
|
static void Player_actor_main_Give_wait(ACTOR*, GAME*);
|
|
static void Player_actor_main_Takeout_item(ACTOR*, GAME*);
|
|
static void Player_actor_main_Putin_item(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_wait(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_walk(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_geton_train(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_geton_train_wait(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_getoff_train(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_standing_train(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_wade(ACTOR*, GAME*);
|
|
static void Player_actor_main_Hide(ACTOR*, GAME*);
|
|
static void Player_actor_main_Groundhog(ACTOR*, GAME*);
|
|
static void Player_actor_main_Release_creature(ACTOR*, GAME*);
|
|
static void Player_actor_main_Wash_car(ACTOR*, GAME*);
|
|
static void Player_actor_main_Tired(ACTOR*, GAME*);
|
|
static void Player_actor_main_Rotate_octagon(ACTOR*, GAME*);
|
|
static void Player_actor_main_Throw_money(ACTOR*, GAME*);
|
|
static void Player_actor_main_Pray(ACTOR*, GAME*);
|
|
static void Player_actor_main_Shake_tree(ACTOR*, GAME*);
|
|
static void Player_actor_main_Mail_jump(ACTOR*, GAME*);
|
|
static void Player_actor_main_Mail_land(ACTOR*, GAME*);
|
|
static void Player_actor_main_Ready_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_main_Fall_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_main_Struggle_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_main_Climbup_pitfall(ACTOR*, GAME*);
|
|
static void Player_actor_main_Stung_bee(ACTOR*, GAME*);
|
|
static void Player_actor_main_Notice_bee(ACTOR*, GAME*);
|
|
static void Player_actor_main_Remove_grass(ACTOR*, GAME*);
|
|
static void Player_actor_main_Shock(ACTOR*, GAME*);
|
|
static void Player_actor_main_Knock_door(ACTOR*, GAME*);
|
|
static void Player_actor_main_Change_cloth(ACTOR*, GAME*);
|
|
static void Player_actor_main_Push_snowball(ACTOR*, GAME*);
|
|
static void Player_actor_main_Rotate_umbrella(ACTOR*, GAME*);
|
|
static void Player_actor_main_Wade_snowball(ACTOR*, GAME*);
|
|
static void Player_actor_main_Complete_payment(ACTOR*, GAME*);
|
|
static void Player_actor_main_Fail_emu(ACTOR*, GAME*);
|
|
static void Player_actor_main_Stung_mosquito(ACTOR*, GAME*);
|
|
static void Player_actor_main_Notice_mosquito(ACTOR*, GAME*);
|
|
static void Player_actor_main_Swing_fan(ACTOR*, GAME*);
|
|
static void Player_actor_main_Switch_on_lighthouse(ACTOR*, GAME*);
|
|
static void Player_actor_main_Radio_exercise(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_geton_boat(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_geton_boat_sitdown(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_geton_boat_wait(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_geton_boat_wade(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_getoff_boat_standup(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_getoff_boat(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_get_golden_item(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_get_golden_item2(ACTOR*, GAME*);
|
|
static void Player_actor_main_Demo_get_golden_axe_wait(ACTOR*, GAME*);
|
|
|
|
extern void Player_actor_move(ACTOR* actorx, GAME* game) {
|
|
static const mPlayer_MAIN_PROC proc[] = {
|
|
&Player_actor_main_Dma,
|
|
&Player_actor_main_Intro,
|
|
&Player_actor_main_Refuse,
|
|
&Player_actor_main_Refuse_pickup,
|
|
&Player_actor_main_Return_demo,
|
|
&Player_actor_main_Return_outdoor,
|
|
&Player_actor_main_Return_outdoor2,
|
|
&Player_actor_main_Wait,
|
|
&Player_actor_main_Walk,
|
|
&Player_actor_main_Run,
|
|
&Player_actor_main_Dash,
|
|
&Player_actor_main_Tumble,
|
|
&Player_actor_main_Tumble_getup,
|
|
&Player_actor_main_Turn_dash,
|
|
&Player_actor_main_Fall,
|
|
&Player_actor_main_Wade,
|
|
&Player_actor_main_Door,
|
|
&Player_actor_main_Outdoor,
|
|
&Player_actor_main_Invade,
|
|
&Player_actor_main_Hold,
|
|
&Player_actor_main_Push,
|
|
&Player_actor_main_Pull,
|
|
&Player_actor_main_Rotate_furniture,
|
|
&Player_actor_main_Open_furniture,
|
|
&Player_actor_main_Wait_open_furniture,
|
|
&Player_actor_main_Close_furniture,
|
|
&Player_actor_main_Lie_bed,
|
|
&Player_actor_main_Wait_bed,
|
|
&Player_actor_main_Roll_bed,
|
|
&Player_actor_main_Standup_bed,
|
|
&Player_actor_main_Pickup,
|
|
&Player_actor_main_Pickup_jump,
|
|
&Player_actor_main_Pickup_furniture,
|
|
&Player_actor_main_Pickup_exchange,
|
|
&Player_actor_main_Sitdown,
|
|
&Player_actor_main_Sitdown_wait,
|
|
&Player_actor_main_Standup,
|
|
&Player_actor_main_Swing_axe,
|
|
&Player_actor_main_Air_axe,
|
|
&Player_actor_main_Reflect_axe,
|
|
&Player_actor_main_Broken_axe,
|
|
&Player_actor_main_Slip_net,
|
|
&Player_actor_main_Ready_net,
|
|
&Player_actor_main_Ready_walk_net,
|
|
&Player_actor_main_Swing_net,
|
|
&Player_actor_main_Pull_net,
|
|
&Player_actor_main_Stop_net,
|
|
&Player_actor_main_Notice_net,
|
|
&Player_actor_main_Putaway_net,
|
|
&Player_actor_main_Ready_rod,
|
|
&Player_actor_main_Cast_rod,
|
|
&Player_actor_main_Air_rod,
|
|
&Player_actor_main_Relax_rod,
|
|
&Player_actor_main_Collect_rod,
|
|
&Player_actor_main_Vib_rod,
|
|
&Player_actor_main_Fly_rod,
|
|
&Player_actor_main_Notice_rod,
|
|
&Player_actor_main_Putaway_rod,
|
|
&Player_actor_main_Dig_scoop,
|
|
&Player_actor_main_Fill_scoop,
|
|
&Player_actor_main_Reflect_scoop,
|
|
&Player_actor_main_Air_scoop,
|
|
&Player_actor_main_Get_scoop,
|
|
&Player_actor_main_Putaway_scoop,
|
|
&Player_actor_main_Putin_scoop,
|
|
&Player_actor_main_Talk,
|
|
&Player_actor_main_Recieve_wait,
|
|
&Player_actor_main_Recieve_stretch,
|
|
&Player_actor_main_Recieve,
|
|
&Player_actor_main_Recieve_putaway,
|
|
&Player_actor_main_Give,
|
|
&Player_actor_main_Give_wait,
|
|
&Player_actor_main_Takeout_item,
|
|
&Player_actor_main_Putin_item,
|
|
&Player_actor_main_Demo_wait,
|
|
&Player_actor_main_Demo_walk,
|
|
&Player_actor_main_Demo_geton_train,
|
|
&Player_actor_main_Demo_geton_train_wait,
|
|
&Player_actor_main_Demo_getoff_train,
|
|
&Player_actor_main_Demo_standing_train,
|
|
&Player_actor_main_Demo_wade,
|
|
&Player_actor_main_Hide,
|
|
&Player_actor_main_Groundhog,
|
|
&Player_actor_main_Release_creature,
|
|
&Player_actor_main_Wash_car,
|
|
&Player_actor_main_Tired,
|
|
&Player_actor_main_Rotate_octagon,
|
|
&Player_actor_main_Throw_money,
|
|
&Player_actor_main_Pray,
|
|
&Player_actor_main_Shake_tree,
|
|
&Player_actor_main_Mail_jump,
|
|
&Player_actor_main_Mail_land,
|
|
&Player_actor_main_Ready_pitfall,
|
|
&Player_actor_main_Fall_pitfall,
|
|
&Player_actor_main_Struggle_pitfall,
|
|
&Player_actor_main_Climbup_pitfall,
|
|
&Player_actor_main_Stung_bee,
|
|
&Player_actor_main_Notice_bee,
|
|
&Player_actor_main_Remove_grass,
|
|
&Player_actor_main_Shock,
|
|
&Player_actor_main_Knock_door,
|
|
&Player_actor_main_Change_cloth,
|
|
&Player_actor_main_Push_snowball,
|
|
&Player_actor_main_Rotate_umbrella,
|
|
&Player_actor_main_Wade_snowball,
|
|
&Player_actor_main_Complete_payment,
|
|
&Player_actor_main_Fail_emu,
|
|
&Player_actor_main_Stung_mosquito,
|
|
&Player_actor_main_Notice_mosquito,
|
|
&Player_actor_main_Swing_fan,
|
|
&Player_actor_main_Switch_on_lighthouse,
|
|
&Player_actor_main_Radio_exercise,
|
|
&Player_actor_main_Demo_geton_boat,
|
|
&Player_actor_main_Demo_geton_boat_sitdown,
|
|
&Player_actor_main_Demo_geton_boat_wait,
|
|
&Player_actor_main_Demo_geton_boat_wade,
|
|
&Player_actor_main_Demo_getoff_boat_standup,
|
|
&Player_actor_main_Demo_getoff_boat,
|
|
&Player_actor_main_Demo_get_golden_item,
|
|
&Player_actor_main_Demo_get_golden_item2,
|
|
&Player_actor_main_Demo_get_golden_axe_wait,
|
|
};
|
|
PLAYER_ACTOR* player = (PLAYER_ACTOR*)actorx;
|
|
int idx;
|
|
|
|
Player_actor_move_other_func1(actorx, game); //
|
|
idx = player->now_main_index;
|
|
if (mPlayer_MAIN_INDEX_VALID(idx) == FALSE || proc[idx] == NULL) {
|
|
return;
|
|
}
|
|
|
|
(*proc[idx])(actorx, game);
|
|
Player_actor_move_other_func2(actorx, game); //
|
|
}
|
|
|
|
typedef void (*mPlayer_DRAW_PROC)(ACTOR*, GAME*);
|
|
|
|
static void Player_actor_draw_Normal(ACTOR*, GAME*);
|
|
|
|
extern void Player_actor_draw(ACTOR* actorx, GAME* game) {
|
|
static const s8 data[] = {
|
|
mPlayer_DRAW_TYPE_NONE, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NONE, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL, mPlayer_DRAW_TYPE_NORMAL,
|
|
mPlayer_DRAW_TYPE_NORMAL,
|
|
};
|
|
|
|
static const mPlayer_DRAW_PROC proc[] = {
|
|
(mPlayer_DRAW_PROC)&none_proc2,
|
|
&Player_actor_draw_Normal,
|
|
};
|
|
|
|
PLAYER_ACTOR* player = (PLAYER_ACTOR*)actorx;
|
|
int main_idx = player->now_main_index;
|
|
|
|
if (mPlayer_MAIN_INDEX_VALID(main_idx) != FALSE) {
|
|
int draw_idx = data[main_idx];
|
|
|
|
if (draw_idx >= 0 && draw_idx < mPlayer_DRAW_TYPE_NUM && proc[draw_idx] != NULL) {
|
|
(*proc[draw_idx])(actorx, game);
|
|
Player_actor_draw_other_func2(actorx, game); //
|
|
}
|
|
}
|
|
}
|