Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_obj_syRock.h
Go to the documentation of this file.
1#ifndef D_A_OBJ_SYROCK_H
2#define D_A_OBJ_SYROCK_H
3
6
17public:
20
21 void setBaseMtx();
22 int CreateHeap();
24 void setFallStat();
25 int Execute(Mtx**);
26 void move();
27 void init_modeWait();
28 void modeWait();
29 bool eventStart();
30 void init_modeDropInit();
31 void modeDropInit();
32 static void* searchWaterPillar(void*, void*);
33 void init_modeDrop();
34 void modeDrop();
35 void init_modeSink();
36 void modeSink();
37 void init_modeMove();
38 void modeMove();
40 void bgCheck();
41 void init_modeDropEnd();
42 void modeDropEnd();
43 int Draw();
44 int Delete();
45
46 static dCcD_SrcGObjInf const mCcDObjInfo;
47 static dCcD_SrcCyl mCcDCyl;
48
49private:
51 /* 0x5C0 */ J3DModel* mpModels[2];
52 /* 0x5C8 */ u8 mMode;
53 /* 0x5C9 */ u8 mAutoDropSwNo;
54 /* 0x5CC */ dCcD_Stts mStts;
55 /* 0x608 */ dCcD_Cyl mUnbrokenCollider; // Collider used to check for bomb/bomb arrow for breaking stalactite
56 /* 0x744 */ u8 mWaitFrames;
57 /* 0x748 */ u32 mShakeOscAngStep;
58 /* 0x74C */ csXyz mShakeAngOffset; // Y component is always 0
59 /* 0x754 */ f32 mShakeAmplitude;
63 /* 0x764 */ f32 mShakeMaxDecay;
64 /* 0x768 */ f32 mShakeMinDecay;
66 /* 0x778 */ u8 mInWaterPrevFrame;
67 /* 0x779 */ u8 field_0x779; // Redundant variable, thus left unnamed
69 /* 0x7BC */ dBgS_ObjAcch mAcch;
71 /* 0x998 */ dBgW* mpBrokenCollision; // Collision of broken stalactite
72 /* 0x99C */ u8 mIsUnbroken;
73
74 // Stalactite should search for an associated water pillar on creation
76 return shape_angle.x & 0xF;
77 }
78
79 // Switch to determine whether or not the stalactite has been broken
80 int getSwBit1() {
81 return fopAcM_GetParamBit(this, 0, 8);
82 }
83
84 // Switch to determine whether or not the stalactite should be broken automatically when player is in range
85 int getSwBit2() {
86 return fopAcM_GetParamBit(this, 8, 8);
87 }
88
89 // Event ID for Midna to stop and note the stalactite that fell by itself
90 int getEvetID() {
91 return fopAcM_GetParamBit(this, 16, 8);
92 }
93
102};
103
104STATIC_ASSERT(sizeof(daSyRock_c) == 0x9a0);
105
106#endif /* D_A_OBJ_SYROCK_H */
int cPhs_Step
Definition c_phase.h:8
Definition J3DModel.h:43
Definition c_sxyz.h:10
Definition d_bg_s_acch.h:15
Definition d_bg_s_movebg_actor.h:11
Definition d_bg_s_acch.h:249
Definition d_bg_w.h:258
Definition d_cc_d.h:472
Definition d_cc_d.h:273
Definition d_event_lib.h:24
Stalactite Rock.
Definition d_a_obj_syRock.h:16
static dCcD_SrcCyl mCcDCyl
Definition d_a_obj_syRock.h:39
void modeDropEnd()
Definition d_a_obj_syRock.cpp:548
void bgCheck()
Definition d_a_obj_syRock.cpp:483
u8 field_0x779
Definition d_a_obj_syRock.h:67
J3DModel * mpModels[2]
Definition d_a_obj_syRock.h:51
int Delete()
Definition d_a_obj_syRock.cpp:563
void init_modeMove()
Definition d_a_obj_syRock.cpp:437
void modeWait()
Definition d_a_obj_syRock.cpp:319
~daSyRock_c()
Definition d_a_obj_syRock.h:19
dCcD_Cyl mUnbrokenCollider
Definition d_a_obj_syRock.h:55
f32 mShakeMaxDecay
Definition d_a_obj_syRock.h:63
Mode_e
Definition d_a_obj_syRock.h:94
@ MODE_SINK
Definition d_a_obj_syRock.h:98
@ MODE_DROP_END
Definition d_a_obj_syRock.h:100
@ MODE_WAIT
Definition d_a_obj_syRock.h:95
@ MODE_MOVE
Definition d_a_obj_syRock.h:99
@ MODE_DROP_INIT
Definition d_a_obj_syRock.h:96
@ MODE_DROP
Definition d_a_obj_syRock.h:97
void modeDropInit()
Definition d_a_obj_syRock.cpp:366
daWtPillar_c * mpWaterPillar
Definition d_a_obj_syRock.h:70
int CreateHeap()
Definition d_a_obj_syRock.cpp:127
void move()
Definition d_a_obj_syRock.cpp:288
void init_modeDropEnd()
Definition d_a_obj_syRock.cpp:533
dBgW * mpBrokenCollision
Definition d_a_obj_syRock.h:71
bool eventStart()
Definition d_a_obj_syRock.cpp:344
u32 mShakeOscAngStep
Definition d_a_obj_syRock.h:57
static dCcD_SrcGObjInf const mCcDObjInfo
Definition d_a_obj_syRock.h:152
void init_modeWait()
Definition d_a_obj_syRock.cpp:315
void modeSink()
Definition d_a_obj_syRock.cpp:425
daSyRock_c()
Definition d_a_obj_syRock.h:18
dBgS_AcchCir mAcchCir
Definition d_a_obj_syRock.h:68
u8 mInWaterPrevFrame
Definition d_a_obj_syRock.h:66
void modeMove()
Definition d_a_obj_syRock.cpp:460
csXyz mShakeAngOffset
Definition d_a_obj_syRock.h:58
void setFallStat()
Definition d_a_obj_syRock.cpp:247
f32 mShakeXOscAngQuantum
Definition d_a_obj_syRock.h:60
int Execute(Mtx **)
Definition d_a_obj_syRock.cpp:276
u8 mWaitFrames
Definition d_a_obj_syRock.h:56
f32 mShakeMinDecay
Definition d_a_obj_syRock.h:64
f32 mShakeZOscAngQuantum
Definition d_a_obj_syRock.h:61
cXyz mUnderwaterOffset
Definition d_a_obj_syRock.h:65
int getSwBit2()
Definition d_a_obj_syRock.h:85
u8 mMode
Definition d_a_obj_syRock.h:52
request_of_phase_process_class mPhase
Definition d_a_obj_syRock.h:50
u8 mAutoDropSwNo
Definition d_a_obj_syRock.h:53
f32 mShakeDampingScale
Definition d_a_obj_syRock.h:62
cPhs_Step create()
Definition d_a_obj_syRock.cpp:159
void init_modeSink()
Definition d_a_obj_syRock.cpp:415
void init_modeDrop()
Definition d_a_obj_syRock.cpp:389
dBgS_ObjAcch mAcch
Definition d_a_obj_syRock.h:69
BOOL getArg0()
Definition d_a_obj_syRock.h:75
f32 mShakeAmplitude
Definition d_a_obj_syRock.h:59
void setBaseMtx()
Definition d_a_obj_syRock.cpp:114
void init_modeDropInit()
Definition d_a_obj_syRock.cpp:352
int getSwBit1()
Definition d_a_obj_syRock.h:80
void modeDrop()
Definition d_a_obj_syRock.cpp:409
static void * searchWaterPillar(void *, void *)
Definition d_a_obj_syRock.cpp:373
int Draw()
Definition d_a_obj_syRock.cpp:552
int getEvetID()
Definition d_a_obj_syRock.h:90
dCcD_Stts mStts
Definition d_a_obj_syRock.h:54
u8 mIsUnbroken
Definition d_a_obj_syRock.h:72
BOOL chkWaterLineIn()
Definition d_a_obj_syRock.cpp:478
Water Column/Pillar.
Definition d_a_obj_waterPillar.h:20
csXyz shape_angle
Definition f_op_actor.h:265
STATIC_ASSERT(sizeof(daSyRock_c)==0x9a0)
f32 Mtx[3][4]
Definition mtx.h:25
u32 fopAcM_GetParamBit(void *ac, u8 shift, u8 bit)
Definition f_op_actor_mng.h:208
int BOOL
Definition types.h:33
unsigned long u32
Definition types.h:12
float f32
Definition types.h:25
unsigned char u8
Definition types.h:8
s16 x
Definition c_sxyz.h:7
Definition c_xyz.h:7
Definition d_cc_d.h:104
Definition d_cc_d.h:87
Definition c_phase.h:19