mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-05-23 06:34:18 -04:00
Merge pull request #404 from Cuyler36:finish_player_struct
Finish player struct members other than main_data union
This commit is contained in:
+127
-133
@@ -11,216 +11,210 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
enum collision_type {
|
||||
ClObj_TYPE_JNT_SPH,
|
||||
ClObj_TYPE_PIPE,
|
||||
ClObj_TYPE_TRIS,
|
||||
ClObj_TYPE_JNT_SPH,
|
||||
ClObj_TYPE_PIPE,
|
||||
ClObj_TYPE_TRIS,
|
||||
|
||||
ClObj_TYPE_NUM
|
||||
ClObj_TYPE_NUM
|
||||
};
|
||||
|
||||
enum weight{
|
||||
MASS_IMMOVABLE,
|
||||
MASS_HEAVY,
|
||||
MASS_NORMAL
|
||||
};
|
||||
enum weight { MASS_IMMOVABLE, MASS_HEAVY, MASS_NORMAL };
|
||||
|
||||
#define MASSTYPE_IMMOVABLE 0xFF
|
||||
#define MASSTYPE_HEAVY 0xFE
|
||||
|
||||
typedef struct collision_obj_s {
|
||||
ACTOR* owner_actor; // actor which owns this collision object
|
||||
ACTOR* collided_actor; // actor which the owner collided with or NULL
|
||||
ACTOR* owner_actor; // actor which owns this collision object
|
||||
ACTOR* collided_actor; // actor which the owner collided with or NULL
|
||||
|
||||
u8 collision_flags0;
|
||||
u8 collision_flags1;
|
||||
u8 collision_flags0;
|
||||
u8 collision_flags1;
|
||||
|
||||
u8 collision_type;
|
||||
u8 collision_type;
|
||||
} ClObj_c;
|
||||
|
||||
typedef struct collision_elem_s {
|
||||
u8 flags;
|
||||
u8 flags;
|
||||
} ClObjElem_c;
|
||||
|
||||
typedef struct collision_pipe_attribute_s {
|
||||
Math3D_pipe_c pipe;
|
||||
Math3D_pipe_c pipe;
|
||||
} ClObjPipeAttr_c;
|
||||
|
||||
typedef struct collision_pipe_s {
|
||||
ClObj_c collision_obj;
|
||||
ClObjElem_c element;
|
||||
ClObjPipeAttr_c attribute;
|
||||
ClObj_c collision_obj;
|
||||
ClObjElem_c element;
|
||||
ClObjPipeAttr_c attribute;
|
||||
} ClObjPipe_c;
|
||||
|
||||
/* static data */
|
||||
|
||||
typedef struct collision_obj_data_s {
|
||||
u8 collision_flags0;
|
||||
u8 collision_flags1;
|
||||
u8 type;
|
||||
u8 collision_flags0;
|
||||
u8 collision_flags1;
|
||||
u8 type;
|
||||
} ClObjData_c;
|
||||
|
||||
typedef struct collision_obj_elem_data_s {
|
||||
u8 flags;
|
||||
u8 flags;
|
||||
} ClObjElemData_c;
|
||||
|
||||
typedef struct collision_obj_pipe_attr_data_s {
|
||||
Math3D_pipe_c pipe;
|
||||
Math3D_pipe_c pipe;
|
||||
} ClObjPipeAttrData_c;
|
||||
|
||||
typedef struct collision_obj_pipe_data_s {
|
||||
ClObjData_c collision_data;
|
||||
ClObjElemData_c element_data;
|
||||
ClObjPipeAttrData_c attribute_data;
|
||||
ClObjData_c collision_data;
|
||||
ClObjElemData_c element_data;
|
||||
ClObjPipeAttrData_c attribute_data;
|
||||
} ClObjPipeData_c;
|
||||
|
||||
typedef struct collision_check_tris_element_attr_data_s{
|
||||
xyz_t vtx[3];
|
||||
}ClObjTrisElemAttrData_c;
|
||||
typedef struct collision_check_tris_element_attr_data_s {
|
||||
xyz_t vtx[3];
|
||||
} ClObjTrisElemAttrData_c;
|
||||
|
||||
typedef struct collision_check_tris_element_data_s{
|
||||
ClObjElemData_c element;
|
||||
ClObjTrisElemAttrData_c data;
|
||||
}ClObjTrisElemData_c;
|
||||
typedef struct collision_check_tris_element_data_s {
|
||||
ClObjElemData_c element;
|
||||
ClObjTrisElemAttrData_c data;
|
||||
} ClObjTrisElemData_c;
|
||||
|
||||
typedef struct collision_check_tris_element_s{
|
||||
typedef struct collision_check_tris_element_s {
|
||||
Math3D_triangle_c tri;
|
||||
xyz_t t;
|
||||
}ClObjTrisElemAttr_c;
|
||||
} ClObjTrisElemAttr_c;
|
||||
|
||||
typedef struct collision_tris_elem_s{
|
||||
ClObjElem_c element;
|
||||
ClObjTrisElemAttr_c attribute;
|
||||
}ClObjTrisElem_c;
|
||||
typedef struct collision_tris_elem_s {
|
||||
ClObjElem_c element;
|
||||
ClObjTrisElemAttr_c attribute;
|
||||
} ClObjTrisElem_c;
|
||||
|
||||
typedef struct collision_tris_s {
|
||||
ClObj_c collision_obj;
|
||||
int count;
|
||||
ClObjTrisElem_c* elements;
|
||||
ClObj_c collision_obj;
|
||||
int count;
|
||||
ClObjTrisElem_c* elements;
|
||||
} ClObjTris_c;
|
||||
|
||||
typedef struct ClObjTris_Init {
|
||||
ClObjData_c data;
|
||||
int count;
|
||||
ClObjTrisElemData_c* elem_data;
|
||||
ClObjData_c data;
|
||||
int count;
|
||||
ClObjTrisElemData_c* elem_data;
|
||||
} ClObjTrisData_c;
|
||||
|
||||
typedef struct collision_obj_joint_sphere_elem_attribute_s{
|
||||
typedef struct collision_obj_joint_sphere_elem_attribute_s {
|
||||
Math3D_sphere_c s1;
|
||||
Math3D_sphere_c s2;
|
||||
f32 unk8;
|
||||
u8 unk14;
|
||||
}ClObjJntSphElemAttr_c;
|
||||
} ClObjJntSphElemAttr_c;
|
||||
|
||||
typedef struct collision_joint_sphere_elem_s{
|
||||
ClObjElem_c element;
|
||||
ClObjJntSphElemAttr_c attribute;
|
||||
}ClObjJntSphElem_c;
|
||||
typedef struct collision_joint_sphere_elem_s {
|
||||
ClObjElem_c element;
|
||||
ClObjJntSphElemAttr_c attribute;
|
||||
} ClObjJntSphElem_c;
|
||||
|
||||
typedef struct collision_joint_sphere_s {
|
||||
ClObj_c collision_obj;
|
||||
int count;
|
||||
ClObjJntSphElem_c* elements;
|
||||
}ClObjJntSph_c;
|
||||
ClObj_c collision_obj;
|
||||
int count;
|
||||
ClObjJntSphElem_c* elements;
|
||||
} ClObjJntSph_c;
|
||||
|
||||
#define Cl_COLLIDER_NUM 50
|
||||
typedef struct collision_check_s {
|
||||
u16 flags;
|
||||
int collider_num;
|
||||
ClObj_c* collider_table[Cl_COLLIDER_NUM];
|
||||
u16 flags;
|
||||
int collider_num;
|
||||
ClObj_c* collider_table[Cl_COLLIDER_NUM];
|
||||
} CollisionCheck_c;
|
||||
|
||||
/* This appears to again be copy-paste from OoT? */
|
||||
typedef struct status_s {
|
||||
xyz_t collision_vec;
|
||||
s16 radius;
|
||||
s16 height;
|
||||
s16 offset;
|
||||
xyz_t collision_vec;
|
||||
s16 radius;
|
||||
s16 height;
|
||||
s16 offset;
|
||||
|
||||
u8 weight;
|
||||
u8 hp;
|
||||
u8 damage;
|
||||
u8 weight;
|
||||
u8 hp;
|
||||
u8 damage;
|
||||
|
||||
u8 damage_effect;
|
||||
u8 at_hit_effect;
|
||||
u8 ac_hit_effect;
|
||||
u8 damage_effect;
|
||||
u8 at_hit_effect;
|
||||
u8 ac_hit_effect;
|
||||
} Status_c;
|
||||
|
||||
typedef struct status_data_s {
|
||||
u8 health; // assuming this is inherited from OoT, seems largely unused
|
||||
s16 radius;
|
||||
s16 height;
|
||||
s16 offset;
|
||||
u8 weight;
|
||||
u8 health; // assuming this is inherited from OoT, seems largely unused
|
||||
s16 radius;
|
||||
s16 height;
|
||||
s16 offset;
|
||||
u8 weight;
|
||||
} StatusData_c;
|
||||
|
||||
typedef struct mco_work_s {
|
||||
int count;
|
||||
ClObj_c* colliders[10];
|
||||
int count;
|
||||
ClObj_c* colliders[10];
|
||||
} McoWork;
|
||||
|
||||
extern McoWork mco_work;
|
||||
|
||||
|
||||
typedef void (*CollisionOCFunction)(GAME*, CollisionCheck_c*, ClObj_c*,ClObj_c*);
|
||||
typedef void (*CollisionOCFunction)(GAME*, CollisionCheck_c*, ClObj_c*, ClObj_c*);
|
||||
typedef int (*CollisionOCClear)(GAME*, ClObj_c*);
|
||||
typedef int (*CollisionClearFunction)(GAME*, ClObj_c*);
|
||||
|
||||
extern void CollisionCheck_workTrisElemCenter(ClObjTrisElem_c *, xyz_t *);
|
||||
extern int ClObj_ct(GAME *, ClObj_c *);
|
||||
extern int ClObj_dt(GAME *, ClObj_c *);
|
||||
extern int ClObj_set4(GAME *, ClObj_c *, ACTOR *, ClObjData_c *);
|
||||
extern void ClObj_OCClear(GAME *, ClObj_c *);
|
||||
extern int ClObjElem_ct(ClObjElem_c *);
|
||||
extern int ClObjElem_set(ClObjElem_c *, ClObjElemData_c *);
|
||||
extern void ClObjElem_OCClear(GAME *, ClObjElem_c *);
|
||||
extern int ClObjJntSphElem_OCClear(GAME *, ClObjJntSphElem_c *);
|
||||
extern int ClObjJntSph_OCClear(GAME *, ClObj_c *);
|
||||
extern int ClObjPipeAttr_ct(GAME *, ClObjPipeAttr_c *);
|
||||
extern int ClObjPipeAttr_dt(GAME *, ClObjPipeAttr_c *);
|
||||
extern int ClObjPipeAttr_set(GAME *, ClObjPipeAttr_c *, ClObjPipeAttr_c *);
|
||||
extern int ClObjPipe_ct(GAME *, ClObjPipe_c *);
|
||||
extern int ClObjPipe_dt(GAME *, ClObjPipe_c *);
|
||||
extern int ClObjPipe_set5(GAME *, ClObjPipe_c *, ACTOR *, ClObjPipeData_c *);
|
||||
extern int ClObjPipe_OCClear(GAME *, ClObj_c *);
|
||||
extern int ClObjTrisElemAttr_ct(GAME *, ClObjTrisElemAttr_c *);
|
||||
extern int ClObjTrisElemAttr_dt(GAME *, ClObjTrisElemAttr_c *);
|
||||
extern int ClObjTrisElemAttr_set(GAME *, ClObjTrisElemAttr_c *, ClObjTrisElemAttrData_c *);
|
||||
extern int ClObjTrisElem_ct(GAME *, ClObjTrisElem_c *);
|
||||
extern int ClObjTrisElem_dt(GAME *, ClObjTrisElem_c *);
|
||||
extern int ClObjTrisElem_set(GAME *, ClObjTrisElem_c *, ClObjTrisElemData_c *);
|
||||
extern int ClObjTrisElem_OCClear(GAME *, ClObjTrisElem_c *);
|
||||
extern int ClObjTris_ct(GAME *, ClObjTris_c *);
|
||||
extern int ClObjTris_dt_nzf(GAME *, ClObjTris_c *);
|
||||
extern int ClObjTris_set5_nzm(GAME *, ClObjTris_c *, ACTOR *, ClObjTrisData_c *, ClObjTrisElem_c *);
|
||||
extern int ClObjTris_OCClear(GAME *, ClObj_c *);
|
||||
extern void CollisionCheck_ct(GAME *, CollisionCheck_c *);
|
||||
extern void CollisionCheck_dt(GAME *, CollisionCheck_c *);
|
||||
extern void CollisionCheck_clear(GAME *, CollisionCheck_c *);
|
||||
extern int CollisionCheck_setOC(GAME *, CollisionCheck_c *, ClObj_c *);
|
||||
extern void CollisionCheck_workTrisElemCenter(ClObjTrisElem_c*, xyz_t*);
|
||||
extern int ClObj_ct(GAME*, ClObj_c*);
|
||||
extern int ClObj_dt(GAME*, ClObj_c*);
|
||||
extern int ClObj_set4(GAME*, ClObj_c*, ACTOR*, ClObjData_c*);
|
||||
extern void ClObj_OCClear(GAME*, ClObj_c*);
|
||||
extern int ClObjElem_ct(ClObjElem_c*);
|
||||
extern int ClObjElem_set(ClObjElem_c*, ClObjElemData_c*);
|
||||
extern void ClObjElem_OCClear(GAME*, ClObjElem_c*);
|
||||
extern int ClObjJntSphElem_OCClear(GAME*, ClObjJntSphElem_c*);
|
||||
extern int ClObjJntSph_OCClear(GAME*, ClObj_c*);
|
||||
extern int ClObjPipeAttr_ct(GAME*, ClObjPipeAttr_c*);
|
||||
extern int ClObjPipeAttr_dt(GAME*, ClObjPipeAttr_c*);
|
||||
extern int ClObjPipeAttr_set(GAME*, ClObjPipeAttr_c*, ClObjPipeAttr_c*);
|
||||
extern int ClObjPipe_ct(GAME*, ClObjPipe_c*);
|
||||
extern int ClObjPipe_dt(GAME*, ClObjPipe_c*);
|
||||
extern int ClObjPipe_set5(GAME*, ClObjPipe_c*, ACTOR*, ClObjPipeData_c*);
|
||||
extern int ClObjPipe_OCClear(GAME*, ClObj_c*);
|
||||
extern int ClObjTrisElemAttr_ct(GAME*, ClObjTrisElemAttr_c*);
|
||||
extern int ClObjTrisElemAttr_dt(GAME*, ClObjTrisElemAttr_c*);
|
||||
extern int ClObjTrisElemAttr_set(GAME*, ClObjTrisElemAttr_c*, ClObjTrisElemAttrData_c*);
|
||||
extern int ClObjTrisElem_ct(GAME*, ClObjTrisElem_c*);
|
||||
extern int ClObjTrisElem_dt(GAME*, ClObjTrisElem_c*);
|
||||
extern int ClObjTrisElem_set(GAME*, ClObjTrisElem_c*, ClObjTrisElemData_c*);
|
||||
extern int ClObjTrisElem_OCClear(GAME*, ClObjTrisElem_c*);
|
||||
extern int ClObjTris_ct(GAME*, ClObjTris_c*);
|
||||
extern int ClObjTris_dt_nzf(GAME*, ClObjTris_c*);
|
||||
extern int ClObjTris_set5_nzm(GAME*, ClObjTris_c*, ACTOR*, ClObjTrisData_c*, ClObjTrisElem_c*);
|
||||
extern int ClObjTris_OCClear(GAME*, ClObj_c*);
|
||||
extern void CollisionCheck_ct(GAME*, CollisionCheck_c*);
|
||||
extern void CollisionCheck_dt(GAME*, CollisionCheck_c*);
|
||||
extern void CollisionCheck_clear(GAME*, CollisionCheck_c*);
|
||||
extern int CollisionCheck_setOC(GAME*, CollisionCheck_c*, ClObj_c*);
|
||||
extern int get_type(u8);
|
||||
extern void CollisionCheck_setOC_HitInfo(ClObj_c *, ClObjElem_c *, xyz_t *, ClObj_c *, ClObjElem_c *, xyz_t *, f32);
|
||||
extern void CollisionCheck_OC_JntSph_Vs_JntSph(GAME *, CollisionCheck_c *, ClObj_c *, ClObj_c *);
|
||||
extern void CollisionCheck_OC_JntSph_Vs_Pipe(GAME *, CollisionCheck_c *, ClObj_c *, ClObj_c *);
|
||||
extern void CollisionCheck_OC_Pipe_Vs_JntSph(GAME *, CollisionCheck_c *, ClObj_c *, ClObj_c *);
|
||||
extern void CollisionCheck_OC_Pipe_Vs_Pipe(GAME *, CollisionCheck_c *, ClObj_c *, ClObj_c *);
|
||||
extern int CollisionCheck_Check1ClObjNoOC(ClObj_c *);
|
||||
extern int CollisionCheck_Check2ClObjNoOC(ClObj_c *, ClObj_c *);
|
||||
extern void CollisionCheck_OC(GAME *, CollisionCheck_c *);
|
||||
extern void CollisionCheck_setOCC_HitInfo(GAME *, ClObj_c *, ClObjTrisElem_c *, xyz_t *, ClObj_c *, ClObjElem_c *, xyz_t *, xyz_t *);
|
||||
extern void CollisionCheck_OCC_Tris_Vs_JntSph(GAME *, CollisionCheck_c *, ClObjTris_c *, ClObjJntSph_c *);
|
||||
extern void CollisionCheck_OCC_Tris_Vs_Pipe(GAME *, CollisionCheck_c *, ClObjTris_c *, ClObjPipe_c *);
|
||||
extern int CollisionCheck_Check1ClObjNoOCC(ClObj_c *);
|
||||
extern void CollisionCheck_OCC(GAME *, CollisionCheck_c *);
|
||||
extern int ClObjTrisElem_OCCClear(GAME *, ClObjTrisElem_c *);
|
||||
extern int ClObj_OCCClear(GAME *, ClObj_c *);
|
||||
extern int ClObjTris_OCCClear(GAME *, ClObj_c *);
|
||||
extern int CollisionCheck_setOCC(GAME *, CollisionCheck_c *, ClObj_c *);
|
||||
extern void CollisionCheck_Status_ct(Status_c *);
|
||||
extern void CollisionCheck_Status_Clear(Status_c *);
|
||||
extern void CollisionCheck_Status_set3(Status_c *, StatusData_c *);
|
||||
extern int CollisionCheck_Uty_ActorWorldPosSetPipeC(ACTOR *, ClObjPipe_c *);
|
||||
|
||||
|
||||
extern void CollisionCheck_setOC_HitInfo(ClObj_c*, ClObjElem_c*, xyz_t*, ClObj_c*, ClObjElem_c*, xyz_t*, f32);
|
||||
extern void CollisionCheck_OC_JntSph_Vs_JntSph(GAME*, CollisionCheck_c*, ClObj_c*, ClObj_c*);
|
||||
extern void CollisionCheck_OC_JntSph_Vs_Pipe(GAME*, CollisionCheck_c*, ClObj_c*, ClObj_c*);
|
||||
extern void CollisionCheck_OC_Pipe_Vs_JntSph(GAME*, CollisionCheck_c*, ClObj_c*, ClObj_c*);
|
||||
extern void CollisionCheck_OC_Pipe_Vs_Pipe(GAME*, CollisionCheck_c*, ClObj_c*, ClObj_c*);
|
||||
extern int CollisionCheck_Check1ClObjNoOC(ClObj_c*);
|
||||
extern int CollisionCheck_Check2ClObjNoOC(ClObj_c*, ClObj_c*);
|
||||
extern void CollisionCheck_OC(GAME*, CollisionCheck_c*);
|
||||
extern void CollisionCheck_setOCC_HitInfo(GAME*, ClObj_c*, ClObjTrisElem_c*, xyz_t*, ClObj_c*, ClObjElem_c*, xyz_t*,
|
||||
xyz_t*);
|
||||
extern void CollisionCheck_OCC_Tris_Vs_JntSph(GAME*, CollisionCheck_c*, ClObjTris_c*, ClObjJntSph_c*);
|
||||
extern void CollisionCheck_OCC_Tris_Vs_Pipe(GAME*, CollisionCheck_c*, ClObjTris_c*, ClObjPipe_c*);
|
||||
extern int CollisionCheck_Check1ClObjNoOCC(ClObj_c*);
|
||||
extern void CollisionCheck_OCC(GAME*, CollisionCheck_c*);
|
||||
extern int ClObjTrisElem_OCCClear(GAME*, ClObjTrisElem_c*);
|
||||
extern int ClObj_OCCClear(GAME*, ClObj_c*);
|
||||
extern int ClObjTris_OCCClear(GAME*, ClObj_c*);
|
||||
extern int CollisionCheck_setOCC(GAME*, CollisionCheck_c*, ClObj_c*);
|
||||
extern void CollisionCheck_Status_ct(Status_c*);
|
||||
extern void CollisionCheck_Status_Clear(Status_c*);
|
||||
extern void CollisionCheck_Status_set3(Status_c*, StatusData_c*);
|
||||
extern int CollisionCheck_Uty_ActorWorldPosSetPipeC(ACTOR*, ClObjPipe_c*);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
+38
-6
@@ -1382,7 +1382,7 @@ struct player_actor_s {
|
||||
/* 0x0D14 */ int settled_requested_main_index_priority;
|
||||
/* 0x0D18 */ mPlayer_main_data main_data; // TODO: Union of many types...
|
||||
/* 0x0D60 */ mPlayer_request_main_data requested_main_index_data; // Union of many types...
|
||||
/* 0x0DA8 */ u8 _0DA8[0x0DB4 - 0x0DA8]; /* TODO: finish */
|
||||
/* 0x0DA8 */ u8 _0DA8[0x0DB4 - 0x0DA8]; /* unused */
|
||||
/* 0x0DB4 */ int animation0_idx;
|
||||
/* 0x0DB8 */ int animation1_idx;
|
||||
/* 0x0DBC */ int _0DBC;
|
||||
@@ -1402,7 +1402,29 @@ struct player_actor_s {
|
||||
/* 0x0E50 */ xyz_t net_bot_col_pos;
|
||||
/* 0x0E5C */ s_xyz net_angle;
|
||||
/* 0x0E64 */ ACTOR* umbrella_actor;
|
||||
/* 0x0E68 */ u8 _0E68[0x1004 - 0x0E68]; // TODO
|
||||
/* 0x0E68 */ int umbrella_state;
|
||||
/* 0x0E6C */ s8 unable_hand_item_in_demo;
|
||||
/* 0x0E6D */ s8 able_hand_all_item_in_demo;
|
||||
/* 0x0E70 */ u32 item_net_catch_label;
|
||||
/* 0x0E74 */ s8 item_net_catch_type;
|
||||
/* 0x0E75 */ s8 item_net_has_catch;
|
||||
/* 0x0E78 */ u32 item_net_catch_label_request_table[8];
|
||||
/* 0x0E98 */ s8 item_net_catch_type_request_table[8];
|
||||
/* 0x0EA0 */ xyz_t item_net_catch_pos_request_table[8];
|
||||
/* 0x0F00 */ f32 item_net_catch_radius_request_table[8];
|
||||
/* 0x0F20 */ int item_net_catch_request_use_count;
|
||||
/* 0x0F24 */ u32 item_net_catch_label_request_force;
|
||||
/* 0x0F28 */ s8 item_net_catch_type_request_force;
|
||||
/* 0x0F2C */ int item_net_catch_insect_idx;
|
||||
/* 0x0F30 */ ACTOR* fishing_rod_actor_p;
|
||||
/* 0x0F34 */ xyz_t item_rod_top_pos;
|
||||
/* 0x0F40 */ xyz_t item_rod_virtual_top_pos;
|
||||
/* 0x0F4C */ int update_item_rod_top_pos;
|
||||
/* 0x0F50 */ s16 item_rod_angle_z;
|
||||
/* 0x0F54 */ ClObjTris_c item_axe_tris;
|
||||
/* 0x0F68 */ ClObjTrisElem_c item_axe_tris_elem_tbl[1];
|
||||
/* 0x0FAC */ ClObjTris_c item_net_tris;
|
||||
/* 0x0FC0 */ ClObjTrisElem_c item_net_tris_elem_tbl[1];
|
||||
/* 0x1004 */ xyz_t scoop_pos;
|
||||
/* 0x1010 */ ClObjPipe_c col_pipe;
|
||||
/* 0x102C */ xyz_t head_pos;
|
||||
@@ -1429,8 +1451,16 @@ struct player_actor_s {
|
||||
/* 0x116A */ s_xyz windmill_angle;
|
||||
/* 0x1170 */ int balloon_start_pos_set_flag;
|
||||
/* 0x1174 */ ACTOR* balloon_actor;
|
||||
/* 0x1178 */ u8 _1178[0x1198 - 0x1178]; // TODO
|
||||
/* 0x1198 */ s8 _1198;
|
||||
/* 0x1178 */ s16 balloon_lean_angle;
|
||||
/* 0x117A */ s_xyz balloon_angle;
|
||||
/* 0x1180 */ f32 balloon_add_rot_z;
|
||||
/* 0x1184 */ f32 balloon_anim_max_frame;
|
||||
/* 0x1188 */ f32 balloon_anim_speed;
|
||||
/* 0x118C */ int balloon_stop_movement_flag;
|
||||
/* 0x1190 */ s16 ballon_add_rot_x;
|
||||
/* 0x1192 */ s16 balloon_add_rot_x_counter;
|
||||
/* 0x1194 */ f32 balloon_current_frame;
|
||||
/* 0x1198 */ s8 address_able_display;
|
||||
/* 0x119A */ s_xyz head_angle;
|
||||
/* 0x11A0 */ xyz_t force_position;
|
||||
/* 0x11AC */ s_xyz force_angle;
|
||||
@@ -1439,8 +1469,10 @@ struct player_actor_s {
|
||||
/* 0x11C0 */ int shake_tree_ut_x[3];
|
||||
/* 0x11CC */ int shake_tree_ut_z[3];
|
||||
/* 0x11D8 */ int shake_tree_little[3];
|
||||
/* 0x11E4 */ u8 _11E4[0x11F8 - 0x11E4]; // TODO
|
||||
/* 0x11F8 */ s8 _11F8;
|
||||
/* 0x11E4 */ xyz_t pitfall_pos;
|
||||
/* 0x11F0 */ int pitfall_flag;
|
||||
/* 0x11F4 */ f32 ripple_timer;
|
||||
/* 0x11F8 */ s8 ripple_foot_idx; // == 0: left, != 0: right
|
||||
/* 0x11F9 */ s8 bgm_volume_mode;
|
||||
/* 0x11FC */ int crash_snowball_for_wade;
|
||||
/* 0x1200 */ xyz_t snowball_dist;
|
||||
|
||||
Reference in New Issue
Block a user