Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_obj_swturn.h
Go to the documentation of this file.
1#ifndef D_A_OBJ_SWTURN_H
2#define D_A_OBJ_SWTURN_H
3
6
16public:
17 typedef void (daObjSwTurn_c::*modeFunc)();
18
23
24 enum Kind {
27 };
28
29 void initBaseMtx();
30 void setBaseMtx();
31 int Create();
32 int CreateHeap();
33 int create1st();
34 int Execute(Mtx**);
35 void mode_proc_call();
36 void init_modeWait();
37 void modeWait();
38 void init_modeRotate();
39 void modeRotate();
40 void rotate_sub_0();
41 void rotate_sub_1();
42 int Draw();
43 int Delete();
44
45 u8 getSwNo() { return fopAcM_GetParamBit(this, 0, 8); }
46 u8 getModelType() { return fopAcM_GetParamBit(this, 8, 4); }
47 u8 getCount() { return fopAcM_GetParamBit(this, 12, 8); }
48 u8 getSwNo2() { return fopAcM_GetParamBit(this, 20, 8); }
49 u8 getKind() { return fopAcM_GetParamBit(this, 28, 4); }
52 return (mKind == 0) ? field_0x5ba + field_0x5c4 * 0x4000 :
53 field_0x5ba + (field_0x5c4 << 0xe) / 3;
54 }
55
57 /* 0x5A8 */ J3DModel* mModel;
58 /* 0x5AC */ u8 mModelType;
59 /* 0x5AD */ u8 mKind;
60 /* 0x5AE */ u8 mMode;
61 /* 0x5AF */ u8 field_0x5af;
62 /* 0x5B0 */ u8 field_0x5b0[2];
63 /* 0x5B4 */ f32 field_0x5b4;
64 /* 0x5B8 */ s16 field_0x5b8;
65 /* 0x5BA */ s16 field_0x5ba;
66 /* 0x5BC */ s16 field_0x5bc;
67 /* 0x5C0 */ int field_0x5c0;
68 /* 0x5C4 */ s16 field_0x5c4;
69 /* 0x5C6 */ u8 field_0x5c6;
70 /* 0x5C8 */ int field_0x5c8;
71 /* 0x5CC */ u16 field_0x5cc;
72 /* 0x5CE */ u8 field_0x5ce;
73 /* 0x5CF */ u8 field_0x5cf;
74 /* 0x5D0 */ u8 field_0x5d0;
75 /* 0x5D1 */ u8 field_0x5d1;
76 /* 0x5D2 */ u16 mRevCount;
77 /* 0x5D4 */ u16 field_0x5d4;
79 /* 0x5DC */ s16 field_0x5dc;
80};
81
82STATIC_ASSERT(sizeof(daObjSwTurn_c) == 0x5e0);
83
84#endif /* D_A_OBJ_SWTURN_H */
Definition J3DModel.h:43
Definition d_bg_s_movebg_actor.h:11
PushPullLabel
Definition d_bg_w_base.h:28
Arbiter's Ground Turn Switch.
Definition d_a_obj_swturn.h:15
J3DModel * mModel
Definition d_a_obj_swturn.h:57
s16 field_0x5bc
Definition d_a_obj_swturn.h:66
int field_0x5c8
Definition d_a_obj_swturn.h:70
u16 mRevCount
Definition d_a_obj_swturn.h:76
u8 field_0x5b0[2]
Definition d_a_obj_swturn.h:62
int Draw()
Definition d_a_obj_swturn.cpp:399
s16 field_0x5dc
Definition d_a_obj_swturn.h:79
void init_modeRotate()
Definition d_a_obj_swturn.cpp:309
void modeWait()
Definition d_a_obj_swturn.cpp:182
void(daObjSwTurn_c::*) modeFunc()
Definition d_a_obj_swturn.h:17
s16 field_0x5ba
Definition d_a_obj_swturn.h:65
int Delete()
Definition d_a_obj_swturn.cpp:409
int Create()
Definition d_a_obj_swturn.cpp:77
Kind
Definition d_a_obj_swturn.h:24
@ KIND_0
Definition d_a_obj_swturn.h:25
@ KIND_1
Definition d_a_obj_swturn.h:26
void modeRotate()
Definition d_a_obj_swturn.cpp:325
f32 field_0x5b4
Definition d_a_obj_swturn.h:63
u8 getKind()
Definition d_a_obj_swturn.h:49
int getRotateAngle()
Definition d_a_obj_swturn.h:51
u8 field_0x5cf
Definition d_a_obj_swturn.h:73
void mode_proc_call()
Definition d_a_obj_swturn.cpp:165
int create1st()
Definition d_a_obj_swturn.cpp:128
int field_0x5c0
Definition d_a_obj_swturn.h:67
request_of_phase_process_class mPhase
Definition d_a_obj_swturn.h:56
u8 field_0x5af
Definition d_a_obj_swturn.h:61
u8 mKind
Definition d_a_obj_swturn.h:59
Mode
Definition d_a_obj_swturn.h:19
@ MODE_ROTATE
Definition d_a_obj_swturn.h:21
@ MODE_WAIT
Definition d_a_obj_swturn.h:20
u8 field_0x5c6
Definition d_a_obj_swturn.h:69
int CreateHeap()
Definition d_a_obj_swturn.cpp:121
void rotate_sub_1()
Definition d_a_obj_swturn.cpp:363
s16 field_0x5c4
Definition d_a_obj_swturn.h:68
u8 mModelType
Definition d_a_obj_swturn.h:58
void rotate_sub_0()
Definition d_a_obj_swturn.cpp:337
u8 getSwNo2()
Definition d_a_obj_swturn.h:48
void setBaseMtx()
Definition d_a_obj_swturn.cpp:70
dBgW_Base::PushPullLabel mPushPullLabel
Definition d_a_obj_swturn.h:78
void init_modeWait()
Definition d_a_obj_swturn.cpp:173
u8 field_0x5d1
Definition d_a_obj_swturn.h:75
u8 getSwNo()
Definition d_a_obj_swturn.h:45
int Execute(Mtx **)
Definition d_a_obj_swturn.cpp:156
u8 field_0x5d0
Definition d_a_obj_swturn.h:74
void initBaseMtx()
Definition d_a_obj_swturn.cpp:65
u16 field_0x5cc
Definition d_a_obj_swturn.h:71
s16 field_0x5b8
Definition d_a_obj_swturn.h:64
u16 getRevCount()
Definition d_a_obj_swturn.h:50
u8 getCount()
Definition d_a_obj_swturn.h:47
u16 field_0x5d4
Definition d_a_obj_swturn.h:77
u8 getModelType()
Definition d_a_obj_swturn.h:46
u8 field_0x5ce
Definition d_a_obj_swturn.h:72
u8 mMode
Definition d_a_obj_swturn.h:60
STATIC_ASSERT(sizeof(daObjSwTurn_c)==0x5e0)
f32 Mtx[3][4]
Definition mtx.h:25
signed short int s16
Definition types.h:9
float f32
Definition types.h:25
unsigned short int u16
Definition types.h:10
unsigned char u8
Definition types.h:8
u32 fopAcM_GetParamBit(void *ac, u8 shift, u8 bit)
Definition f_op_actor_mng.h:196
Definition c_phase.h:17