mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-05-23 06:34:18 -04:00
match data
This commit is contained in:
@@ -23,10 +23,16 @@ struct _MUSEUM_INSECT_PRIVATE_DATA;
|
||||
|
||||
typedef void (*PRIV_INSECT_PROCESS)(struct _MUSEUM_INSECT_PRIVATE_DATA*, GAME*);
|
||||
|
||||
typedef struct _MUSEUM_INSECT_SKELETON {
|
||||
cKF_SkeletonInfo_R_c _00;
|
||||
artificial_padding(0, 0x2ac, cKF_SkeletonInfo_R_c);
|
||||
cKF_Animation_R_c* _2AC;
|
||||
} MUSEUM_INSECT_SKELETON;
|
||||
|
||||
typedef struct _MUSEUM_INSECT_PRIVATE_DATA {
|
||||
int _00;
|
||||
PRIV_INSECT_PROCESS _04;
|
||||
artificial_padding(4, 0xc, PRIV_INSECT_PROCESS);
|
||||
MUSEUM_INSECT_SKELETON* _08;
|
||||
f32 _0C;
|
||||
f32 _10;
|
||||
f32 _14; // scale
|
||||
@@ -76,24 +82,54 @@ typedef struct _MUSEUM_INSECT_ACTOR {
|
||||
s16 _2F9C[5]; // offset: 0x2F9C
|
||||
} MUSEUM_INSECT_ACTOR;
|
||||
|
||||
// bss
|
||||
extern MUSEUM_INSECT_ACTOR* MI_Control_Actor;
|
||||
|
||||
// data
|
||||
extern rgba_t window_color;
|
||||
extern Gfx *m_monshiro_disp_tbl[], *m_monki_disp_tbl[], *m_ageha_disp_tbl[], *m_ohmurasaki_disp_tbl[],
|
||||
*m_minmin_disp_tbl[], *m_tukutuku_disp_tbl[], *m_higurashi_disp_tbl[], *m_abura_disp_tbl[], *m_shiokara_disp_tbl[],
|
||||
*m_akiakane_disp_tbl[], *m_ginyanma_disp_tbl[], *m_oniyanma_disp_tbl[], *m_syouryou_disp_tbl[],
|
||||
*m_tonosama_disp_tbl[], *m_koorogi_disp_tbl[], *m_kirigirisu_disp_tbl[], *m_suzumushi_disp_tbl[],
|
||||
*m_matumushi_disp_tbl[], *m_tentou_disp_tbl[], *m_nanahoshi_disp_tbl[], *m_kamakiri_disp_tbl[],
|
||||
*m_maimai_disp_tbl[], *m_hachi_disp_tbl[], *m_kanabun_disp_tbl[], *m_kabuto_disp_tbl[], *m_hirata_disp_tbl[],
|
||||
*m_tamamushi_disp_tbl[], *m_gomadara_disp_tbl[], *m_nokogiri_disp_tbl[], *m_miyama_disp_tbl[], *m_okuwa_disp_tbl[],
|
||||
*m_amenbo_disp_tbl[], *m_mino_disp_tbl[], *m_kumo_disp_tbl[], *m_goki_disp_tbl[], *m_genji_disp_tbl[],
|
||||
*m_dango_disp_tbl[], *m_ari_disp_tbl[], *m_okera_disp_tbl[], *m_ka_disp_tbl[];
|
||||
extern Gfx** minsect_mdl[aINS_INSECT_TYPE_NUM];
|
||||
extern PRIV_INSECT_PROCESS minsect_ct[aINS_INSECT_TYPE_NUM];
|
||||
extern PRIV_INSECT_PROCESS minsect_mv[aINS_INSECT_TYPE_NUM];
|
||||
extern PRIV_INSECT_PROCESS minsect_dw[aINS_INSECT_TYPE_NUM];
|
||||
extern f32 minsect_scale_tbl[aINS_INSECT_TYPE_NUM];
|
||||
extern f32 minsect_scale_tbl[aINS_INSECT_TYPE_NUM];
|
||||
extern int active_time_tbl[40];
|
||||
extern int relax_time_tbl[40];
|
||||
extern rgba_t window_color;
|
||||
extern f32 base_high_tbl[4];
|
||||
extern xyz_t flower_pos[4];
|
||||
extern xyz_t ohmurasaki_tree_pos;
|
||||
extern s16 aim_angle_tbl[6];
|
||||
extern Gfx** minsect_mdl[40];
|
||||
extern xyz_t tonbo_rock_pos[1];
|
||||
extern xyz_t tentou_flower_pos[1];
|
||||
extern f32 minsect_shadow_scale_tbl[aINS_INSECT_TYPE_NUM];
|
||||
extern int active_time_tbl[aINS_INSECT_TYPE_NUM];
|
||||
extern int relax_time_tbl[aINS_INSECT_TYPE_NUM];
|
||||
extern xyz_t flower_pos[8];
|
||||
extern xyz_t tree_pos[8];
|
||||
extern xyz_t rock_pos[2];
|
||||
extern xyz_t tonbo_rock_pos[6];
|
||||
extern xyz_t tentou_flower_pos[4];
|
||||
extern xyz_t hachi_base_pos;
|
||||
extern xyz_t kabuto_base_pos[1];
|
||||
extern xyz_t kabuto_base_pos[9];
|
||||
extern cKF_Skeleton_R_c* kuwagata_model_tbl[4];
|
||||
extern cKF_Animation_R_c* kuwagata_anim_tbl[4];
|
||||
extern xyz_t kuwagata_base_pos[4];
|
||||
extern xyz_t amenbo_center_pos;
|
||||
extern xyz_t rail_pos[6];
|
||||
extern xyz_t ari_rail_pos[3];
|
||||
extern f32 minsect_scale_tbl[aINS_INSECT_TYPE_NUM];
|
||||
|
||||
// rodata
|
||||
extern const f32 base_high_tbl[4];
|
||||
extern const s16 aim_angle_tbl[6];
|
||||
extern const xyz_t mino_base_pos;
|
||||
extern const xyz_t mino_top_pos;
|
||||
extern const xyz_t mino_bottom_pos;
|
||||
extern const xyz_t kumo_base_pos;
|
||||
extern const xyz_t kumo_top_pos;
|
||||
extern const xyz_t kumo_bottom_pos;
|
||||
extern const xyz_t base_genji_pos;
|
||||
extern const xyz_t genji_mizu_pos;
|
||||
extern const xyz_t okera_base_pos;
|
||||
|
||||
// ac_museum_insect.c
|
||||
int Museum_Insect_GetMsgNo(ACTOR* actorx);
|
||||
@@ -108,17 +144,17 @@ void Museum_Insect_Actor_draw(ACTOR* actor, GAME* game);
|
||||
|
||||
// ac_museum_insect_base.c_inc
|
||||
void mID_insect_moveF(MUSEUM_INSECT_PRIVATE_DATA* actor);
|
||||
void minsect_amenbo_ct(void);
|
||||
void minsect_amenbo_mv(void);
|
||||
void minsect_amenbo_dw(void);
|
||||
void ari_alone_ct(void);
|
||||
void minsect_amenbo_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_amenbo_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_amenbo_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void ari_alone_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void ari_alone_make(void);
|
||||
void ari_alone_dt(void);
|
||||
void ari_alone_move(void);
|
||||
void ari_alone_draw(void);
|
||||
void minsect_ari_ct(void);
|
||||
void minsect_ari_mv(void);
|
||||
void minsect_ari_dw(void);
|
||||
void minsect_ari_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_ari_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_ari_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_draw_shadow(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_fly_BGCheck(MUSEUM_INSECT_PRIVATE_DATA* actor, f32 f1, f32 f2);
|
||||
void minsect_garden_BGCheck(MUSEUM_INSECT_PRIVATE_DATA* actor, f32 f1, f32 f2);
|
||||
@@ -225,22 +261,22 @@ void minsect_kabuto_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_kabuto_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
|
||||
// ac_museum_insect_kuwagata.c_inc
|
||||
void mi_kuwagata_rensa_init(void);
|
||||
void mi_kuwagata_rensa(void);
|
||||
void mi_kuwagata_wait_init(void);
|
||||
void mi_kuwagata_wait(void);
|
||||
void mi_kuwagata_move_init(void);
|
||||
void mi_kuwagata_move(void);
|
||||
void mi_kuwagata_battle_init(void);
|
||||
void mi_kuwagata_battle(void);
|
||||
void mi_kuwagata_menace_init(void);
|
||||
void mi_kuwagata_menace(void);
|
||||
void mi_kuwagata_attack_init(void);
|
||||
void mi_kuwagata_attack(void);
|
||||
void mi_kuwagata_setupAction(void);
|
||||
void minsect_kuwagata_ct(void);
|
||||
void minsect_kuwagata_mv(void);
|
||||
void minsect_kuwagata_dw(void);
|
||||
void mi_kuwagata_rensa_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_rensa(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_wait_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_wait(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_move_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_move(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_battle_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_battle(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_menace_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_menace(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_attack_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_attack(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void mi_kuwagata_setupAction(MUSEUM_INSECT_PRIVATE_DATA* actor, int r4, GAME* game);
|
||||
void minsect_kuwagata_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_kuwagata_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_kuwagata_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
|
||||
// ac_museum_insect_mino.c_inc
|
||||
void minsect_mino_up_init(void);
|
||||
@@ -255,9 +291,9 @@ void minsect_mino_wait_init(void);
|
||||
void minsect_mino_wait(void);
|
||||
void minsect_mino_hineri(void);
|
||||
void minsect_mino_setupAction(void);
|
||||
void minsect_mino_ct(void);
|
||||
void minsect_mino_mv(void);
|
||||
void minsect_mino_dw(void);
|
||||
void minsect_mino_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_mino_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_mino_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
|
||||
// ac_museum_insect_kumo.c_inc
|
||||
void minsect_kumo_hide_init(void);
|
||||
@@ -274,31 +310,31 @@ void minsect_kumo_wait_init(void);
|
||||
void minsect_kumo_wait(void);
|
||||
void minsect_kumo_hineri(void);
|
||||
void minsect_kumo_setupAction(void);
|
||||
void minsect_kumo_ct(void);
|
||||
void minsect_kumo_mv(void);
|
||||
void minsect_kumo_dw(void);
|
||||
void minsect_kumo_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_kumo_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_kumo_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
|
||||
// ac_museum_insect_goki.c_inc
|
||||
void minsect_goki_ct(void);
|
||||
void minsect_goki_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void goki_player_check(void);
|
||||
void goki_wall_hit_angle_corect_sub(void);
|
||||
void goki_wall_hit_angle_corect(void);
|
||||
void goki_set_talk_info_init(void);
|
||||
void goki_talk_process(void);
|
||||
void goki_talk_process_init(void);
|
||||
void minsect_goki_mv(void);
|
||||
void minsect_goki_dw(void);
|
||||
void minsect_goki_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_goki_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
|
||||
// ac_museum_insect_genji.c_inc
|
||||
void mi_genji_check_player(void);
|
||||
void genji_light_ct(void);
|
||||
void genji_light_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void genji_light_make(void);
|
||||
void genji_light_anime(void);
|
||||
void genji_light_move(void);
|
||||
void genji_light_draw(void);
|
||||
void minsect_genji_ct(void);
|
||||
void minsect_genji_mv(void);
|
||||
void minsect_genji_dw(void);
|
||||
void minsect_genji_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_genji_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_genji_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
|
||||
// ac_museum_insect_dango.c_inc
|
||||
void mi_dango_defence_anime(void);
|
||||
@@ -308,13 +344,13 @@ void mi_dango_move(void);
|
||||
void mi_dango_defence_init(void);
|
||||
void mi_dango_defence(void);
|
||||
void mi_dango_setupAction(void);
|
||||
void minsect_dango_ct(void);
|
||||
void minsect_dango_mv(void);
|
||||
void minsect_dango_dw(void);
|
||||
void minsect_dango_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_dango_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_dango_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
|
||||
// ac_museum_insect_okera.c_inc
|
||||
void mi_okera_check_player(void);
|
||||
void minsect_okera_ct(void);
|
||||
void minsect_okera_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void okera_dig_up_process_init(void);
|
||||
void okera_dig_up_process(void);
|
||||
void okera_normal_process_init(void);
|
||||
@@ -323,13 +359,13 @@ void okera_dig_down_process_init(void);
|
||||
void okera_dig_down_process(void);
|
||||
void okera_dig_wait_process_init(void);
|
||||
void okera_dig_wait_process(void);
|
||||
void minsect_okera_mv(void);
|
||||
void minsect_okera_dw(void);
|
||||
void minsect_okera_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_okera_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
|
||||
// ac_museum_insect_ka.c_inc
|
||||
void minsect_ka_ct(void);
|
||||
void minsect_ka_mv(void);
|
||||
void minsect_ka_dw(void);
|
||||
void minsect_ka_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_ka_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
void minsect_ka_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,4 +1,87 @@
|
||||
#include "ac_museum_insect_priv.h"
|
||||
// clang-format off
|
||||
extern Gfx
|
||||
act_m_mu_monshiro1T_model,
|
||||
act_m_mu_monshiro2T_model,
|
||||
act_m_mu_monki1T_model,
|
||||
act_m_mu_monki2T_model,
|
||||
act_m_mu_kiageha1T_model,
|
||||
act_m_mu_kiageha2T_model,
|
||||
act_m_mu_ohmurasaki1T_model,
|
||||
act_m_mu_ohmurasaki2T_model,
|
||||
act_m_mu_minmin1_1T_model,
|
||||
act_m_mu_minmin1_2T_model,
|
||||
act_m_mu_tukutuku1_1T_model,
|
||||
act_m_mu_tukutuku1_2T_model,
|
||||
act_m_mu_higurashi1_1T_model,
|
||||
act_m_mu_higurashi1_2T_model,
|
||||
act_m_mu_abura1_1T_model,
|
||||
act_m_mu_abura1_2T_model,
|
||||
act_m_mu_shiokara1_1T_model,
|
||||
act_m_mu_shiokara1_2T_model,
|
||||
act_m_mu_shiokara2_2T_model,
|
||||
act_m_mu_akiakane1_1T_model,
|
||||
act_m_mu_akiakane1_2T_model,
|
||||
act_m_mu_akiakane2_2T_model,
|
||||
act_m_mu_ginyanma1_1T_model,
|
||||
act_m_mu_ginyanma1_2T_model,
|
||||
act_m_mu_ginyanma2_2T_model,
|
||||
act_m_mu_oniyanma1_1T_model,
|
||||
act_m_mu_oniyanma1_2T_model,
|
||||
act_m_mu_oniyanma2_2T_model,
|
||||
act_m_mu_syouryou1T_model,
|
||||
act_m_mu_syouryou2_2T_model,
|
||||
act_m_mu_tonosama1T_model,
|
||||
act_m_mu_tonosama2_2T_model,
|
||||
act_m_mu_koorogi1T_model,
|
||||
act_m_mu_koorogi2_2T_model,
|
||||
act_m_mu_kirigirisu1T_model,
|
||||
act_m_mu_kirigirisu2_2T_model,
|
||||
act_m_mu_suzumushi1T_model,
|
||||
act_m_mu_suzumushi2_2T_model,
|
||||
act_m_mu_matumushi1T_model,
|
||||
act_m_mu_matumushi2_2T_model,
|
||||
act_m_mu_tentou1T_model,
|
||||
act_m_mu_tentou2T_model,
|
||||
act_m_mu_nanahoshi1T_model,
|
||||
act_m_mu_nanahoshi2T_model,
|
||||
act_m_mu_kamakiri1T_model,
|
||||
act_m_mu_kamakiri2_2T_model,
|
||||
act_m_mu_maimaiT_model,
|
||||
act_m_mu_hachi1_1T_model,
|
||||
act_m_mu_hachi1_2T_model,
|
||||
act_m_mu_hachi2_2T_model,
|
||||
act_m_mu_kanabun1T_model,
|
||||
act_m_mu_kabuto1T_model,
|
||||
act_m_mu_hirata1T_model,
|
||||
act_m_mu_tamamushi1T_model,
|
||||
act_m_mu_gomadara1T_model,
|
||||
act_m_mu_nokogiri1T_model,
|
||||
act_m_mu_miyama1T_model,
|
||||
act_m_mu_okuwa1T_model,
|
||||
act_m_mu_amenbo1T_model,
|
||||
act_m_mu_amenbo2T_model,
|
||||
act_m_mu_mino1_1T_model,
|
||||
act_m_mu_mino1_2T_model,
|
||||
act_m_mu_mino2T_model,
|
||||
act_m_mu_kumo1_1T_mode,
|
||||
act_m_mu_kumo1_2T_mode,
|
||||
act_m_mu_kumo2T_model,
|
||||
act_m_mu_kumo1_1T_model,
|
||||
act_m_mu_kumo1_2T_model,
|
||||
act_m_mu_danna1T_model,
|
||||
act_m_mu_danna2T_model,
|
||||
act_m_mu_genji2_a_model,
|
||||
act_m_mu_genji2_b_model,
|
||||
act_m_mu_genji2_c_model,
|
||||
act_m_mu_genji2_d_model,
|
||||
act_m_mu_dango1T_model,
|
||||
act_m_mu_dango2T_model,
|
||||
act_m_mu_ariT_model,
|
||||
act_m_mu_keraT_model,
|
||||
act_m_mu_ka1T_model,
|
||||
act_m_mu_ka2_1T_model,
|
||||
act_m_mu_ka2_2T_model;
|
||||
|
||||
ACTOR_PROFILE Museum_Insect_Profile = {
|
||||
mAc_PROFILE_MUSEUM_INSECT,
|
||||
@@ -14,6 +97,760 @@ ACTOR_PROFILE Museum_Insect_Profile = {
|
||||
NULL,
|
||||
};
|
||||
|
||||
rgba_t window_color = {
|
||||
0xff, 0xff, 0xcd, 0xff
|
||||
};
|
||||
|
||||
Gfx *m_monshiro_disp_tbl[] = {
|
||||
&act_m_mu_monshiro1T_model,
|
||||
&act_m_mu_monshiro2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_monki_disp_tbl[] = {
|
||||
&act_m_mu_monki1T_model,
|
||||
&act_m_mu_monki2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_ageha_disp_tbl[] = {
|
||||
&act_m_mu_kiageha1T_model,
|
||||
&act_m_mu_kiageha2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_ohmurasaki_disp_tbl[] = {
|
||||
&act_m_mu_ohmurasaki1T_model,
|
||||
&act_m_mu_ohmurasaki2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_minmin_disp_tbl[] = {
|
||||
&act_m_mu_minmin1_1T_model,
|
||||
&act_m_mu_minmin1_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_tukutuku_disp_tbl[] = {
|
||||
&act_m_mu_tukutuku1_1T_model,
|
||||
&act_m_mu_tukutuku1_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_higurashi_disp_tbl[] = {
|
||||
&act_m_mu_higurashi1_1T_model,
|
||||
&act_m_mu_higurashi1_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_abura_disp_tbl[] = {
|
||||
&act_m_mu_abura1_1T_model,
|
||||
&act_m_mu_abura1_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_shiokara_disp_tbl[] = {
|
||||
&act_m_mu_shiokara1_1T_model,
|
||||
&act_m_mu_shiokara1_2T_model,
|
||||
&act_m_mu_shiokara2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_akiakane_disp_tbl[] = {
|
||||
&act_m_mu_akiakane1_1T_model,
|
||||
&act_m_mu_akiakane1_2T_model,
|
||||
&act_m_mu_akiakane2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_ginyanma_disp_tbl[] = {
|
||||
&act_m_mu_ginyanma1_1T_model,
|
||||
&act_m_mu_ginyanma1_2T_model,
|
||||
&act_m_mu_ginyanma2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_oniyanma_disp_tbl[] = {
|
||||
&act_m_mu_oniyanma1_1T_model,
|
||||
&act_m_mu_oniyanma1_2T_model,
|
||||
&act_m_mu_oniyanma2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_syouryou_disp_tbl[] = {
|
||||
&act_m_mu_syouryou1T_model,
|
||||
&act_m_mu_syouryou2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_tonosama_disp_tbl[] = {
|
||||
&act_m_mu_tonosama1T_model,
|
||||
&act_m_mu_tonosama2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_koorogi_disp_tbl[] = {
|
||||
&act_m_mu_koorogi1T_model,
|
||||
&act_m_mu_koorogi2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_kirigirisu_disp_tbl[] = {
|
||||
&act_m_mu_kirigirisu1T_model,
|
||||
&act_m_mu_kirigirisu2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_suzumushi_disp_tbl[] = {
|
||||
&act_m_mu_suzumushi1T_model,
|
||||
&act_m_mu_suzumushi2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_matumushi_disp_tbl[] = {
|
||||
&act_m_mu_matumushi1T_model,
|
||||
&act_m_mu_matumushi2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_tentou_disp_tbl[] = {
|
||||
&act_m_mu_tentou1T_model,
|
||||
&act_m_mu_tentou2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_nanahoshi_disp_tbl[] = {
|
||||
&act_m_mu_nanahoshi1T_model,
|
||||
&act_m_mu_nanahoshi2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_kamakiri_disp_tbl[] = {
|
||||
&act_m_mu_kamakiri1T_model,
|
||||
&act_m_mu_kamakiri2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_maimai_disp_tbl[] = {
|
||||
&act_m_mu_maimaiT_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_hachi_disp_tbl[] = {
|
||||
&act_m_mu_hachi1_1T_model,
|
||||
&act_m_mu_hachi1_2T_model,
|
||||
&act_m_mu_hachi2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_kanabun_disp_tbl[] = {
|
||||
&act_m_mu_kanabun1T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_kabuto_disp_tbl[] = {
|
||||
&act_m_mu_kabuto1T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_hirata_disp_tbl[] = {
|
||||
&act_m_mu_hirata1T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_tamamushi_disp_tbl[] = {
|
||||
&act_m_mu_tamamushi1T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_gomadara_disp_tbl[] = {
|
||||
&act_m_mu_gomadara1T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_nokogiri_disp_tbl[] = {
|
||||
&act_m_mu_nokogiri1T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_miyama_disp_tbl[] = {
|
||||
&act_m_mu_miyama1T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_okuwa_disp_tbl[] = {
|
||||
&act_m_mu_okuwa1T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_amenbo_disp_tbl[] = {
|
||||
&act_m_mu_amenbo1T_model,
|
||||
&act_m_mu_amenbo2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_mino_disp_tbl[] = {
|
||||
&act_m_mu_mino1_1T_model,
|
||||
&act_m_mu_mino1_2T_model,
|
||||
&act_m_mu_mino2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_kumo_disp_tbl[] = {
|
||||
&act_m_mu_kumo1_1T_model,
|
||||
&act_m_mu_kumo1_2T_model,
|
||||
&act_m_mu_kumo2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_goki_disp_tbl[] = {
|
||||
&act_m_mu_danna1T_model,
|
||||
&act_m_mu_danna2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_genji_disp_tbl[] = {
|
||||
&act_m_mu_genji2_a_model,
|
||||
&act_m_mu_genji2_b_model,
|
||||
&act_m_mu_genji2_c_model,
|
||||
&act_m_mu_genji2_d_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_dango_disp_tbl[] = {
|
||||
&act_m_mu_dango1T_model,
|
||||
&act_m_mu_dango2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_ari_disp_tbl[] = {
|
||||
&act_m_mu_ariT_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_okera_disp_tbl[] = {
|
||||
&act_m_mu_keraT_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx *m_ka_disp_tbl[] = {
|
||||
&act_m_mu_ka1T_model,
|
||||
&act_m_mu_ka2_1T_model,
|
||||
&act_m_mu_ka2_2T_model,
|
||||
NULL
|
||||
};
|
||||
|
||||
Gfx **minsect_mdl[] = {
|
||||
m_monshiro_disp_tbl,
|
||||
m_monki_disp_tbl,
|
||||
m_ageha_disp_tbl,
|
||||
m_ohmurasaki_disp_tbl,
|
||||
m_minmin_disp_tbl,
|
||||
m_tukutuku_disp_tbl,
|
||||
m_higurashi_disp_tbl,
|
||||
m_abura_disp_tbl,
|
||||
m_hachi_disp_tbl,
|
||||
m_shiokara_disp_tbl,
|
||||
m_akiakane_disp_tbl,
|
||||
m_ginyanma_disp_tbl,
|
||||
m_oniyanma_disp_tbl,
|
||||
m_syouryou_disp_tbl,
|
||||
m_tonosama_disp_tbl,
|
||||
m_koorogi_disp_tbl,
|
||||
m_kirigirisu_disp_tbl,
|
||||
m_suzumushi_disp_tbl,
|
||||
m_matumushi_disp_tbl,
|
||||
m_kanabun_disp_tbl,
|
||||
m_kabuto_disp_tbl,
|
||||
m_hirata_disp_tbl,
|
||||
m_tamamushi_disp_tbl,
|
||||
m_gomadara_disp_tbl,
|
||||
m_tentou_disp_tbl,
|
||||
m_nanahoshi_disp_tbl,
|
||||
m_kamakiri_disp_tbl,
|
||||
m_genji_disp_tbl,
|
||||
m_goki_disp_tbl,
|
||||
m_nokogiri_disp_tbl,
|
||||
m_miyama_disp_tbl,
|
||||
m_okuwa_disp_tbl,
|
||||
m_maimai_disp_tbl,
|
||||
m_okera_disp_tbl,
|
||||
m_amenbo_disp_tbl,
|
||||
m_mino_disp_tbl,
|
||||
m_dango_disp_tbl,
|
||||
m_kumo_disp_tbl,
|
||||
m_ari_disp_tbl,
|
||||
m_ka_disp_tbl
|
||||
};
|
||||
|
||||
PRIV_INSECT_PROCESS minsect_ct[] = {
|
||||
minsect_chou_ct,
|
||||
minsect_chou_ct,
|
||||
minsect_chou_ct,
|
||||
minsect_chou_ct,
|
||||
minsect_semi_ct,
|
||||
minsect_semi_ct,
|
||||
minsect_semi_ct,
|
||||
minsect_semi_ct,
|
||||
minsect_hachi_ct,
|
||||
minsect_tonbo_ct,
|
||||
minsect_tonbo_ct,
|
||||
minsect_tonbo_ct,
|
||||
minsect_tonbo_ct,
|
||||
minsect_batta_ct,
|
||||
minsect_batta_ct,
|
||||
minsect_batta_ct,
|
||||
minsect_batta_ct,
|
||||
minsect_batta_ct,
|
||||
minsect_batta_ct,
|
||||
minsect_kabuto_ct,
|
||||
minsect_kabuto_ct,
|
||||
minsect_kuwagata_ct,
|
||||
minsect_kabuto_ct,
|
||||
minsect_kabuto_ct,
|
||||
minsect_tentou_ct,
|
||||
minsect_tentou_ct,
|
||||
minsect_tentou_ct,
|
||||
minsect_genji_ct,
|
||||
minsect_goki_ct,
|
||||
minsect_kuwagata_ct,
|
||||
minsect_kuwagata_ct,
|
||||
minsect_kuwagata_ct,
|
||||
minsect_tentou_ct,
|
||||
minsect_okera_ct,
|
||||
minsect_amenbo_ct,
|
||||
minsect_mino_ct,
|
||||
minsect_dango_ct,
|
||||
minsect_kumo_ct,
|
||||
minsect_ari_ct,
|
||||
minsect_ka_ct
|
||||
};
|
||||
|
||||
PRIV_INSECT_PROCESS minsect_mv[] = {
|
||||
minsect_chou_mv,
|
||||
minsect_chou_mv,
|
||||
minsect_chou_mv,
|
||||
minsect_chou_mv,
|
||||
minsect_semi_mv,
|
||||
minsect_semi_mv,
|
||||
minsect_semi_mv,
|
||||
minsect_semi_mv,
|
||||
minsect_hachi_mv,
|
||||
minsect_tonbo_mv,
|
||||
minsect_tonbo_mv,
|
||||
minsect_tonbo_mv,
|
||||
minsect_tonbo_mv,
|
||||
minsect_batta_mv,
|
||||
minsect_batta_mv,
|
||||
minsect_batta_mv,
|
||||
minsect_batta_mv,
|
||||
minsect_batta_mv,
|
||||
minsect_batta_mv,
|
||||
minsect_kabuto_mv,
|
||||
minsect_kabuto_mv,
|
||||
minsect_kuwagata_mv,
|
||||
minsect_kabuto_mv,
|
||||
minsect_kabuto_mv,
|
||||
minsect_tentou_mv,
|
||||
minsect_tentou_mv,
|
||||
minsect_tentou_mv,
|
||||
minsect_genji_mv,
|
||||
minsect_goki_mv,
|
||||
minsect_kuwagata_mv,
|
||||
minsect_kuwagata_mv,
|
||||
minsect_kuwagata_mv,
|
||||
minsect_tentou_mv,
|
||||
minsect_okera_mv,
|
||||
minsect_amenbo_mv,
|
||||
minsect_mino_mv,
|
||||
minsect_dango_mv,
|
||||
minsect_kumo_mv,
|
||||
minsect_ari_mv,
|
||||
minsect_ka_mv
|
||||
};
|
||||
|
||||
PRIV_INSECT_PROCESS minsect_dw[] = {
|
||||
minsect_chou_dw,
|
||||
minsect_chou_dw,
|
||||
minsect_chou_dw,
|
||||
minsect_chou_dw,
|
||||
minsect_semi_dw,
|
||||
minsect_semi_dw,
|
||||
minsect_semi_dw,
|
||||
minsect_semi_dw,
|
||||
minsect_hachi_dw,
|
||||
minsect_tonbo_dw,
|
||||
minsect_tonbo_dw,
|
||||
minsect_tonbo_dw,
|
||||
minsect_tonbo_dw,
|
||||
minsect_batta_dw,
|
||||
minsect_batta_dw,
|
||||
minsect_batta_dw,
|
||||
minsect_batta_dw,
|
||||
minsect_batta_dw,
|
||||
minsect_batta_dw,
|
||||
minsect_kabuto_dw,
|
||||
minsect_kabuto_dw,
|
||||
minsect_kuwagata_dw,
|
||||
minsect_kabuto_dw,
|
||||
minsect_kabuto_dw,
|
||||
minsect_tentou_dw,
|
||||
minsect_tentou_dw,
|
||||
minsect_tentou_dw,
|
||||
minsect_genji_dw,
|
||||
minsect_goki_dw,
|
||||
minsect_kuwagata_dw,
|
||||
minsect_kuwagata_dw,
|
||||
minsect_kuwagata_dw,
|
||||
minsect_tentou_dw,
|
||||
minsect_okera_dw,
|
||||
minsect_amenbo_dw,
|
||||
minsect_mino_dw,
|
||||
minsect_dango_dw,
|
||||
minsect_kumo_dw,
|
||||
minsect_ari_dw,
|
||||
minsect_ka_dw
|
||||
};
|
||||
|
||||
f32 minsect_shadow_scale_tbl[] = {
|
||||
1.0f,
|
||||
1.0f,
|
||||
1.5f,
|
||||
1.5f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
1.0f,
|
||||
1.0f,
|
||||
1.0f,
|
||||
1.5f,
|
||||
1.5f,
|
||||
1.8f,
|
||||
1.0f,
|
||||
1.5f,
|
||||
1.0f,
|
||||
1.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
1.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
1.0f,
|
||||
0.0f,
|
||||
1.0f,
|
||||
0.6f,
|
||||
0.7f,
|
||||
0.0f,
|
||||
0.0f
|
||||
};
|
||||
|
||||
int active_time_tbl[] = {
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 4, 0, 0),
|
||||
mTM_TIME2SEC( 4, 0, 0),
|
||||
mTM_TIME2SEC( 4, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC(16, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC(16, 0, 0),
|
||||
mTM_TIME2SEC(16, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC(19, 0, 0),
|
||||
mTM_TIME2SEC(19, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC(19, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC(19, 0, 0),
|
||||
mTM_TIME2SEC(19, 0, 0),
|
||||
mTM_TIME2SEC(19, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0)
|
||||
};
|
||||
|
||||
int relax_time_tbl[] = {
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC(16, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC(16, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(17, 0, 0),
|
||||
mTM_TIME2SEC(4, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 8, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC(19, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0),
|
||||
mTM_TIME2SEC( 0, 0, 0)
|
||||
};
|
||||
|
||||
xyz_t flower_pos[8] = {
|
||||
{ 147.0f, 66.f, 169.f },
|
||||
{ 238.0f, 66.f, 201.f },
|
||||
{ 264.0f, 66.f, 164.f },
|
||||
{ 165.0f, 66.f, 219.f },
|
||||
{ 181.0f, 66.f, 235.f },
|
||||
{ 199.0f, 66.f, 188.f },
|
||||
{ 327.5f, 66.f, 154.f },
|
||||
{ 410.0f, 66.f, 190.f }
|
||||
};
|
||||
|
||||
xyz_t ohmurasaki_tree_pos = {
|
||||
360.f, 85.f, 265.f
|
||||
};
|
||||
|
||||
xyz_t tree_pos[8] = {
|
||||
{ 92.f, 0.f, -15.f },
|
||||
{ 168.f, 0.f, 5.f },
|
||||
{ 244.f, 0.f, -15.f },
|
||||
{ 316.f, 0.f, 5.f },
|
||||
{ 392.f, 0.f, -15.f },
|
||||
{ 468.f, 0.f, 5.f },
|
||||
{ 360.f, 0.f, 245.f },
|
||||
{ 165.f, 0.f, 485.f }
|
||||
};
|
||||
|
||||
xyz_t rock_pos[] = {
|
||||
{ 225.f, 0.f, 388.5f },
|
||||
{ 385.f, 0.f, 485.0f }
|
||||
};
|
||||
|
||||
xyz_t tonbo_rock_pos[6] = {
|
||||
{ 215.f, 68.f, 403.f },
|
||||
{ 232.f, 60.f, 381.f },
|
||||
{ 372.f, 65.f, 482.f },
|
||||
{ 390.f, 68.f, 469.f },
|
||||
{ 328.f, 72.f, 501.f },
|
||||
{ 351.f, 72.f, 501.f }
|
||||
};
|
||||
|
||||
xyz_t tentou_flower_pos[4] = {
|
||||
{ 410.0f, 65.f, 240.0f },
|
||||
{ 213.5f, 65.f, 155.0f },
|
||||
{ 233.0f, 65.f, 233.5f },
|
||||
{ 294.0f, 65.f, 170.5f },
|
||||
};
|
||||
|
||||
xyz_t hachi_base_pos = {
|
||||
165.5f, 78.5f, 482.5f
|
||||
};
|
||||
|
||||
xyz_t kabuto_base_pos[9] = {
|
||||
{ 165.5f, 78.5f, 482.5f },
|
||||
{ 389.5f, 66.5f, -14.5f },
|
||||
{ 241.5f, 67.0f, -15.5f },
|
||||
{ 165.0f, 81.5f, 0.5f },
|
||||
{ 89.0f, 64.0f, -15.5f },
|
||||
{ 466.0f, 84.0f, 1.5f },
|
||||
{ 171.0f, 64.5f, 5.5f },
|
||||
{ 319.0f, 81.0f, 1.0f },
|
||||
{ 313.0f, 63.0f, 5.5f }
|
||||
};
|
||||
|
||||
extern cKF_Skeleton_R_c
|
||||
cKF_bs_r_act_m_hirata_b,
|
||||
cKF_bs_r_act_m_nokogiri_b,
|
||||
cKF_bs_r_act_m_miyama_b,
|
||||
cKF_bs_r_act_m_okuwa_b;
|
||||
|
||||
cKF_Skeleton_R_c *kuwagata_model_tbl[] = {
|
||||
&cKF_bs_r_act_m_hirata_b,
|
||||
&cKF_bs_r_act_m_nokogiri_b,
|
||||
&cKF_bs_r_act_m_miyama_b,
|
||||
&cKF_bs_r_act_m_okuwa_b
|
||||
};
|
||||
|
||||
extern cKF_Animation_R_c
|
||||
cKF_ba_r_act_m_hirata_b,
|
||||
cKF_ba_r_act_m_nokogiri_b,
|
||||
cKF_ba_r_act_m_miyama_b,
|
||||
cKF_ba_r_act_m_okuwa_b;
|
||||
|
||||
cKF_Animation_R_c *kuwagata_anim_tbl[] = {
|
||||
&cKF_ba_r_act_m_hirata_b,
|
||||
&cKF_ba_r_act_m_nokogiri_b,
|
||||
&cKF_ba_r_act_m_miyama_b,
|
||||
&cKF_ba_r_act_m_okuwa_b
|
||||
};
|
||||
|
||||
xyz_t kuwagata_base_pos[4] = {
|
||||
{ 166.f, 80.5f, 0.5f },
|
||||
{ 169.f, 66.5f, 5.0f },
|
||||
{ 318.f, 80.0f, 1.0f },
|
||||
{ 315.f, 65.0f, 5.5f }
|
||||
};
|
||||
|
||||
xyz_t amenbo_center_pos = {
|
||||
289.f, 25.f, 218.f
|
||||
};
|
||||
|
||||
xyz_t rail_pos[6] = {
|
||||
{ 368.f, 45.f, 467.f },
|
||||
{ 363.f, 45.f, 482.f },
|
||||
{ 374.f, 45.f, 499.f },
|
||||
{ 393.f, 45.f, 502.f },
|
||||
{ 407.f, 45.f, 488.f },
|
||||
{ 407.f, 45.f, 469.f }
|
||||
};
|
||||
|
||||
xyz_t ari_rail_pos[3] = {
|
||||
{ 177.f, 45.f, -14.f },
|
||||
{ 242.f, 45.f, 10.f },
|
||||
{ 307.f, 45.f, -14.f }
|
||||
};
|
||||
|
||||
f32 minsect_scale_tbl[40] = {
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.008f,
|
||||
0.008f,
|
||||
0.008f,
|
||||
0.008f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.009f,
|
||||
0.009f,
|
||||
0.009f,
|
||||
0.009f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.007f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f,
|
||||
0.01f
|
||||
};
|
||||
|
||||
// rodata
|
||||
const s16 aim_angle_tbl[6] = {
|
||||
DEG2SHORT_ANGLE(45 + 0),
|
||||
DEG2SHORT_ANGLE(45 + 90),
|
||||
DEG2SHORT_ANGLE(45 + 180),
|
||||
DEG2SHORT_ANGLE(45 + 270),
|
||||
DEG2SHORT_ANGLE(45 + 180),
|
||||
DEG2SHORT_ANGLE(45 + 90)
|
||||
};
|
||||
|
||||
const f32 base_high_tbl[4] = {
|
||||
85.f, 95.f, 90.f, 90.f
|
||||
};
|
||||
|
||||
const xyz_t mino_base_pos = {
|
||||
135.f, 64.f, 474.f
|
||||
};
|
||||
|
||||
const xyz_t mino_top_pos = {
|
||||
135.f, 90.f, 474.f
|
||||
};
|
||||
|
||||
const xyz_t mino_bottom_pos = {
|
||||
135.f, 54.f, 474.f
|
||||
};
|
||||
|
||||
const xyz_t kumo_base_pos = {
|
||||
330.f, 64.5f, 229.f
|
||||
};
|
||||
|
||||
const xyz_t kumo_top_pos = {
|
||||
330.f, 90.f, 229.f
|
||||
};
|
||||
|
||||
const xyz_t kumo_bottom_pos = {
|
||||
330.f, 54.f, 229.f
|
||||
};
|
||||
|
||||
const xyz_t base_genji_pos = {
|
||||
258.f, 62.f, 258.5f
|
||||
};
|
||||
|
||||
const xyz_t genji_mizu_pos = {
|
||||
289.f, 25.f, 218.f
|
||||
};
|
||||
|
||||
const xyz_t okera_base_pos = {
|
||||
235.f, 45.f, 445.f
|
||||
};
|
||||
|
||||
// clang-format on
|
||||
|
||||
int Museum_Insect_GetMsgNo(ACTOR* actorx) {
|
||||
static u8 item_name[mIN_ITEM_NAME_LEN];
|
||||
MUSEUM_INSECT_ACTOR* actor = (MUSEUM_INSECT_ACTOR*)actorx;
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
|
||||
void mID_insect_moveF(MUSEUM_INSECT_PRIVATE_DATA* actor) {
|
||||
}
|
||||
void minsect_amenbo_ct(void) {
|
||||
void minsect_amenbo_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void minsect_amenbo_mv(void) {
|
||||
void minsect_amenbo_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void minsect_amenbo_dw(void) {
|
||||
void minsect_amenbo_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void ari_alone_ct(void) {
|
||||
void ari_alone_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void ari_alone_make(void) {
|
||||
}
|
||||
@@ -34,11 +34,11 @@ void ari_alone_move(void) {
|
||||
}
|
||||
void ari_alone_draw(void) {
|
||||
}
|
||||
void minsect_ari_ct(void) {
|
||||
void minsect_ari_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void minsect_ari_mv(void) {
|
||||
void minsect_ari_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void minsect_ari_dw(void) {
|
||||
void minsect_ari_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void minsect_draw_shadow(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ void mi_batta_check_player(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
|
||||
void mi_batta_suzumushi_hane_anime(MUSEUM_INSECT_PRIVATE_DATA* actor) {
|
||||
static f32 scaleX_table[7];
|
||||
static f32 scaleX_table[7] = { 1.15f, 0.9f, 1.15f, 0.9f, 1.15f, 0.9f, 1.15f };
|
||||
if (actor->_82 < 7) {
|
||||
if (chase_f(&actor->_58, (GETREG(NMREG, 1) * 0.01f + 1.0f) * scaleX_table[actor->_82], 0.23f) == 1) {
|
||||
actor->_82--;
|
||||
@@ -27,7 +27,7 @@ void mi_batta_suzumushi_hane_anime(MUSEUM_INSECT_PRIVATE_DATA* actor) {
|
||||
}
|
||||
|
||||
void mi_batta_hane_anime(MUSEUM_INSECT_PRIVATE_DATA* actor) {
|
||||
static f32 scaleX_table[7];
|
||||
static f32 scaleX_table[7] = { 1.15f, 0.5f, 1.15f, 0.5f, 1.15f, 0.5f, 1.15f };
|
||||
if (actor->_7C < 7) {
|
||||
if (chase_f(&actor->_58, (GETREG(NMREG, 1) * 0.01f + 1.0f) * scaleX_table[actor->_7C], 0.23f) == 1) {
|
||||
actor->_7C--;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#include "ac_museum_insect_priv.h"
|
||||
|
||||
void mi_hachi_hane_anime(MUSEUM_INSECT_PRIVATE_DATA* actor) {
|
||||
static f32 scaleX_table[7];
|
||||
static f32 scaleX_table[7] = { 1.f, 0.85f, 1.15f, 0.85f, 1.15f, 0.85f, 1.15f };
|
||||
if (actor->_78 < 7) {
|
||||
if (chase_f(&actor->_5C, (GETREG(NMREG, 1) * 0.01f + 1.0f) * scaleX_table[actor->_78], 0.115f) == 1) {
|
||||
actor->_78--;
|
||||
@@ -139,8 +139,8 @@ void mi_hachi_move(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
|
||||
void mi_hachi_setupAction(MUSEUM_INSECT_PRIVATE_DATA* actor, int r4, GAME* game) {
|
||||
static PRIV_INSECT_PROCESS init_proc[1];
|
||||
static PRIV_INSECT_PROCESS move_proc[1];
|
||||
static PRIV_INSECT_PROCESS init_proc[3] = { mi_hachi_wait_init, mi_hachi_move_init, mi_hachi_mitu_init };
|
||||
static PRIV_INSECT_PROCESS move_proc[3] = { mi_hachi_wait, mi_hachi_move, mi_hachi_mitu };
|
||||
actor->_04 = move_proc[r4];
|
||||
init_proc[r4](actor, game);
|
||||
}
|
||||
|
||||
@@ -1 +1,90 @@
|
||||
#include "ac_museum_insect_priv.h"
|
||||
|
||||
void mi_kuwagata_rensa_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
actor->_7A = 0;
|
||||
}
|
||||
void mi_kuwagata_rensa(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
add_calc_short_angle2(&actor->_78, actor->_7A, CALC_EASE2(0.4f), DEG2SHORT_ANGLE(0.75f), DEG2SHORT_ANGLE(0.25f));
|
||||
}
|
||||
|
||||
void mi_kuwagata_wait_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
actor->_6E = (s16)RANDOM_F(200.f) + 40;
|
||||
cKF_SkeletonInfo_R_init_standard_repeat_speedsetandmorph(&actor->_08->_00, actor->_08->_2AC, NULL, 0.5f, 0.0f);
|
||||
}
|
||||
|
||||
void mi_kuwagata_wait(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
actor->_6E--;
|
||||
if (actor->_6E < 0) {
|
||||
actor->_7A = DEG2SHORT_ANGLE(-7);
|
||||
actor->_6E = (s16)RANDOM_F(200.F) + 40;
|
||||
if (RANDOM_F(1.0f) > 0.7f || GETREG(NMREG, 1)) {
|
||||
mi_kuwagata_setupAction(actor, 3, game);
|
||||
return;
|
||||
} else if (RANDOM_F(1.0f) > 0.7f || GETREG(NMREG, 0)) {
|
||||
mi_kuwagata_setupAction(actor, 2, game);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (actor->_78 == actor->_7A) {
|
||||
actor->_7A = 0;
|
||||
}
|
||||
actor->_76--;
|
||||
if (actor->_76 < 0) {
|
||||
cKF_SkeletonInfo_R_play(&actor->_08->_00);
|
||||
if ((int)actor->_08->_00.frame_control.current_frame == 14) {
|
||||
actor->_76 = (s16)RANDOM_F(356.F) + 4;
|
||||
if (actor->_8E == 0) {
|
||||
actor->_76 *= 10;
|
||||
}
|
||||
} else if ((int)actor->_08->_00.frame_control.current_frame == 1) {
|
||||
actor->_76 = (s16)RANDOM_F(1760.f) + 40;
|
||||
if (actor->_8E == 0) {
|
||||
actor->_76 *= 10;
|
||||
}
|
||||
}
|
||||
}
|
||||
add_calc_short_angle2(&actor->_78, actor->_7A, CALC_EASE2(0.4f), DEG2SHORT_ANGLE(0.75f), DEG2SHORT_ANGLE(0.25f));
|
||||
}
|
||||
|
||||
void mi_kuwagata_move_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
return;
|
||||
}
|
||||
|
||||
void mi_kuwagata_move(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
return;
|
||||
}
|
||||
|
||||
void mi_kuwagata_battle_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
if (actor->_8C & 4) {
|
||||
actor->_40 = 0.05f;
|
||||
} else if (actor->_8C & 8) {
|
||||
actor->_40 = -0.05f;
|
||||
}
|
||||
actor->_6E = (s16)RANDOM_F(120.f) + 60;
|
||||
actor->_7C = 0x10;
|
||||
}
|
||||
|
||||
void mi_kuwagata_battle(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void mi_kuwagata_menace_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void mi_kuwagata_menace(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
|
||||
void mi_kuwagata_attack_init(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
return;
|
||||
}
|
||||
|
||||
void mi_kuwagata_attack(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
return;
|
||||
}
|
||||
|
||||
void mi_kuwagata_setupAction(MUSEUM_INSECT_PRIVATE_DATA* actor, int r4, GAME* game) {
|
||||
}
|
||||
void minsect_kuwagata_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void minsect_kuwagata_mv(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
void minsect_kuwagata_dw(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
#include "ac_museum_insect_priv.h"
|
||||
|
||||
void minsect_semi_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
const static xyz_t init_pos[1] = { 0, 0, 0 };
|
||||
const static xyz_t init_pos[4] = {
|
||||
{ 97.f, 85.f, -18.5f }, { 396.f, 85.5f, -20.f }, { 471.5f, 65.5f, 4.5f }, { 248.f, 88.f, -21.f }
|
||||
};
|
||||
int s;
|
||||
actor->_58 = 1.0f;
|
||||
actor->_70 = 0;
|
||||
@@ -18,7 +20,7 @@ void minsect_semi_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
|
||||
void mi_semi_hane_anime(MUSEUM_INSECT_PRIVATE_DATA* actor) {
|
||||
static float scaleX_table[1];
|
||||
static float scaleX_table[7] = { 1.15f, 1.f, 1.15f, 1.f, 1.15f, 1.f, 1.15f };
|
||||
if (actor->_70 < 7) {
|
||||
if (chase_f(&actor->_58, (GETREG(NMREG, 1) * 0.01f + 1.0f) * scaleX_table[actor->_70], 0.23f) == TRUE) {
|
||||
actor->_70--;
|
||||
|
||||
@@ -13,7 +13,7 @@ void mi_tentou_check_player(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
|
||||
void mi_tentou_kama_anime(MUSEUM_INSECT_PRIVATE_DATA* actor) {
|
||||
const static f32 scaleX_table[1];
|
||||
static f32 scaleX_table[7] = { 1.f, 0.95f, 1.15f, 0.95f, 1.15f, 0.95f, 1.15f };
|
||||
if (actor->_7E < 7) {
|
||||
if (chase_f(&actor->_5C, (GETREG(NMREG, 1) * 0.01f + 1.0f) * scaleX_table[actor->_7E], 0.115f) == 1) {
|
||||
actor->_7E--;
|
||||
@@ -87,8 +87,8 @@ void mi_tentou_move(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
}
|
||||
if (actor->_00 != 32) {
|
||||
add_calc_short_angle2(&actor->_68.y, actor->_72, CALC_EASE2(0.5f), DEG2SHORT_ANGLE(0.25),
|
||||
DEG2SHORT_ANGLE(0.125));
|
||||
add_calc_short_angle2(&actor->_68.y, actor->_72, CALC_EASE2(0.5f), DEG2SHORT_ANGLE(2.125),
|
||||
DEG2SHORT_ANGLE(0.25));
|
||||
} else {
|
||||
add_calc_short_angle2(&actor->_68.y, actor->_72, CALC_EASE2(0.2f), DEG2SHORT_ANGLE(0.25),
|
||||
DEG2SHORT_ANGLE(0.125));
|
||||
@@ -171,8 +171,8 @@ void mi_tentou_menace(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
}
|
||||
|
||||
void mi_tentou_setupAction(MUSEUM_INSECT_PRIVATE_DATA* actor, int r4, GAME* game) {
|
||||
static PRIV_INSECT_PROCESS move_proc[1];
|
||||
static PRIV_INSECT_PROCESS init_proc[1];
|
||||
static PRIV_INSECT_PROCESS move_proc[3] = { mi_tentou_wait_init, mi_tentou_move_init, mi_tentou_menace_init };
|
||||
static PRIV_INSECT_PROCESS init_proc[3] = { mi_tentou_wait, mi_tentou_move, mi_tentou_menace };
|
||||
actor->_04 = move_proc[r4];
|
||||
init_proc[r4](actor, game);
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ void minsect_tonbo_ct(MUSEUM_INSECT_PRIVATE_DATA* actor, GAME* game) {
|
||||
actor->_76 = qrand();
|
||||
minsect_tonbo_normal_process_init(actor, game);
|
||||
} else {
|
||||
static xyz_t tonbo_rock_pos[1];
|
||||
actor->_74 = actor->_00 - 9;
|
||||
MI_Control_Actor->_2F9C[2] |= (1 << actor->_74);
|
||||
actor->_44 = actor->_1C = tonbo_rock_pos[actor->_74];
|
||||
|
||||
Reference in New Issue
Block a user