Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_cstatue.h
Go to the documentation of this file.
1#ifndef D_A_CSTATUE_H
2#define D_A_CSTATUE_H
3
6#include "f_op/f_op_actor.h"
7
23
30
37
42
51
60class daCstatue_c : public fopAc_ac_c {
61public:
63 int createHeap();
64 int create();
66 void setRoomInfo();
67 void setMatrix();
68 void posMove();
69 void setCollision();
71 void setDemo();
72 void setAnime();
73 int initBrk(u16);
74 void initStopBrkBtk();
75 void initStartBrkBtk();
76 int execute();
77 int draw();
78
79 bool checkBossAtGroundHit() const { return mBossAtGndHit == 1; }
80 bool checkNormalType() const { return mType == daCstatueType_Normal; }
81 bool checkNotSmallType() const { return mType != daCstatueType_Small; }
85 cXyz& getBallPos() { return mBallPos; }
90 void warpStart(const cXyz& pos) {
91 mWarpTarget = pos;
93 }
95 void offStateFlg0(daCstatue_FLG0 flg) { mStateFlg0 &= ~flg; }
96 bool checkStateFlg0(daCstatue_FLG0 flg) const { return mStateFlg0 & flg; }
101
102 static u16 const m_bckIdxTable[daCstatueType_N][7];
103
104private:
105 /* 0x568 */ const char* mResName;
107 /* 0x574 */ J3DModel* mModel;
111 /* 0x5AC */ dBgS_AcchCir mAcchCir[4];
113 /* 0x884 */ dCcD_Stts mStts;
114 /* 0x8C0 */ dCcD_Cyl mCyl1;
115 /* 0x9FC */ dCcD_Cyl* mCyl2;
116 /* 0xA00 */ dCcD_Cps* mCps1;
117 /* 0xA04 */ dCcD_Cps* mCps2;
118 /* 0xA08 */ dCcD_Sph* mSph;
120 /* 0xA14 */ Z2Creature mSound;
121 /* 0xAA4 */ dPaPo_c mPaPo;
122 /* 0xADC */ s8 mReverb;
123 /* 0xADD */ u8 mType;
124 /* 0xADE */ u8 mParam0;
125 /* 0xADF */ u8 mCurrentAnim;
126 /* 0xAE0 */ u8 mMoveMode;
127 /* 0xAE1 */ u8 mWarpMode;
128 /* 0xAE2 */ u8 mParam1;
129 /* 0xAE3 */ u8 mDemoMode;
130 /* 0xAE4 */ u8 mParam2;
131 /* 0xAE5 */ u8 mBossAtGndHit;
132 /* 0xAE6 */ u16 unused;
133 /* 0xAE8 */ s16 mDemoTimer;
134 /* 0xAEA */ s16 mTimer1;
135 /* 0xAEC */ u32 mStateFlg0;
136 /* 0xAF0 */ u32 mShadowKey;
137 /* 0xAF4 */ cXyz mSomePos;
139 /* 0xB04 */ f32 mTargetFrame;
140 /* 0xB08 */ cXyz mLinkPos;
141 /* 0xB14 */ cXyz mWarpTarget;
142 /* 0xB20 */ cXyz mBallPos;
143};
144
145STATIC_ASSERT(sizeof(daCstatue_c) == 0xB2C);
146
147#endif /* D_A_CSTATUE_H */
Definition J3DModel.h:43
Definition Z2Creature.h:7
Definition d_bg_s_acch.h:15
Definition d_bg_s_acch.h:258
Definition d_cc_d.h:441
Definition d_cc_d.h:461
Definition d_cc_d.h:473
Definition d_cc_d.h:269
Particle effect management class for center-based effects.
Definition d_particle_copoly.h:25
Dominion Rod Statue.
Definition d_a_cstatue.h:60
bool checkNormalType() const
Definition d_a_cstatue.h:80
~daCstatue_c()
Definition d_a_cstatue.cpp:404
dPaPo_c mPaPo
Definition d_a_cstatue.h:121
void initStartBrkBtk()
Definition d_a_cstatue.cpp:1031
u8 mType
Definition d_a_cstatue.h:123
u32 mStateFlg0
Definition d_a_cstatue.h:135
cXyz mSomePos
Definition d_a_cstatue.h:137
dCcD_Cyl mCyl1
Definition d_a_cstatue.h:114
bool checkBossType() const
Definition d_a_cstatue.h:82
int initBrk(u16)
Definition d_a_cstatue.cpp:1018
int draw()
Definition d_a_cstatue.cpp:1173
void atHitCallback(fopAc_ac_c *)
Definition d_a_cstatue.cpp:122
bool checkStateFlg0(daCstatue_FLG0 flg) const
Definition d_a_cstatue.h:96
dCcD_Stts mStts
Definition d_a_cstatue.h:113
u8 mDemoMode
Definition d_a_cstatue.h:129
u8 mCurrentAnim
Definition d_a_cstatue.h:125
request_of_phase_process_class mPhaseReq
Definition d_a_cstatue.h:106
dBgS_StatueAcch mStatueAcch
Definition d_a_cstatue.h:112
u8 mMoveMode
Definition d_a_cstatue.h:126
u8 mWarpMode
Definition d_a_cstatue.h:127
s16 mDemoTimer
Definition d_a_cstatue.h:133
cXyz mWarpTarget
Definition d_a_cstatue.h:141
void warpDelete()
Definition d_a_cstatue.h:97
cXyz & getBallPos()
Definition d_a_cstatue.h:85
dCcD_Cyl * mCyl2
Definition d_a_cstatue.h:115
int execute()
Definition d_a_cstatue.cpp:1048
void posMove()
Definition d_a_cstatue.cpp:460
dCcD_Sph * mSph
Definition d_a_cstatue.h:118
void setRoomInfo()
Definition d_a_cstatue.cpp:421
u16 unused
Definition d_a_cstatue.h:132
s16 mTimer1
Definition d_a_cstatue.h:134
u8 mBossAtGndHit
Definition d_a_cstatue.h:131
BOOL checkHammerReverse()
Definition d_a_cstatue.cpp:770
s8 mReverb
Definition d_a_cstatue.h:122
void onWarpGround(const cXyz &pos)
Definition d_a_cstatue.h:86
dBgS_AcchCir mAcchCir[4]
Definition d_a_cstatue.h:111
int createHeap()
Definition d_a_cstatue.cpp:133
bool checkNotSmallType() const
Definition d_a_cstatue.h:81
Z2Creature mSound
Definition d_a_cstatue.h:120
void setDemo()
Definition d_a_cstatue.cpp:788
u8 mParam1
Definition d_a_cstatue.h:128
void initStopBrkBtk()
Definition d_a_cstatue.cpp:1024
mDoExt_brkAnm mAnim2
Definition d_a_cstatue.h:110
void onStateFlg0(daCstatue_FLG0 flg)
Definition d_a_cstatue.h:94
u32 mShadowKey
Definition d_a_cstatue.h:136
mDoExt_btkAnm mAnim1
Definition d_a_cstatue.h:109
void offStateFlg0(daCstatue_FLG0 flg)
Definition d_a_cstatue.h:95
f32 mTargetFrame
Definition d_a_cstatue.h:139
cXyz mBallPos
Definition d_a_cstatue.h:142
J3DModel * mModel
Definition d_a_cstatue.h:107
f32 mControlDistanceOffset
Definition d_a_cstatue.h:138
dCcD_Cps * mCps2
Definition d_a_cstatue.h:117
u8 mParam2
Definition d_a_cstatue.h:130
mDoExt_McaMorfSO * mpMorf
Definition d_a_cstatue.h:108
void setMatrix()
Definition d_a_cstatue.cpp:435
void setCollision()
Definition d_a_cstatue.cpp:622
cXyz mLinkPos
Definition d_a_cstatue.h:140
bool checkBossAtGroundHit() const
Definition d_a_cstatue.h:79
dCcD_Cps * mCps1
Definition d_a_cstatue.h:116
static u16 const m_bckIdxTable[daCstatueType_N][7]
Definition d_a_cstatue.h:56
u8 mParam0
Definition d_a_cstatue.h:124
mDoExt_invisibleModel mInvisible
Definition d_a_cstatue.h:119
int create()
Definition d_a_cstatue.cpp:208
const char * mResName
Definition d_a_cstatue.h:105
void warpStart(const cXyz &pos)
Definition d_a_cstatue.h:90
void setAnime()
Definition d_a_cstatue.cpp:862
Definition f_op_actor.h:230
Definition m_Do_ext.h:331
Definition m_Do_ext.h:94
Definition m_Do_ext.h:65
Definition m_Do_ext.h:265
daCstatue_FLG0
Definition d_a_cstatue.h:8
@ daCstatue_FLG0_200
Definition d_a_cstatue.h:18
@ daCstatue_FLG0_80
Definition d_a_cstatue.h:16
@ daCstatue_FLG0_Demo
Definition d_a_cstatue.h:15
@ daCstatue_FLG0_2
Definition d_a_cstatue.h:10
@ daCstatue_FLG0_1
Definition d_a_cstatue.h:9
@ daCstatue_FLG0_800
Definition d_a_cstatue.h:20
@ daCstatue_FLG0_4
Definition d_a_cstatue.h:11
@ daCstatue_FLG0_400
Definition d_a_cstatue.h:19
@ daCstatue_FLG0_20
Definition d_a_cstatue.h:14
@ daCstatue_FLG0_100
Definition d_a_cstatue.h:17
@ daCstatue_FLG0_1000
Definition d_a_cstatue.h:21
@ daCstatue_FLG0_8
Definition d_a_cstatue.h:12
@ daCstatue_FLG0_10
Definition d_a_cstatue.h:13
daCstatue_MoveMode
Definition d_a_cstatue.h:24
@ daCstatue_MoveMode_1
Definition d_a_cstatue.h:26
@ daCstatue_MoveMode_2
Definition d_a_cstatue.h:27
@ daCstatue_MoveMode_3
Definition d_a_cstatue.h:28
@ daCstatue_MoveMode_0
Definition d_a_cstatue.h:25
STATIC_ASSERT(sizeof(daCstatue_c)==0xB2C)
daCstatueWarpMode
Definition d_a_cstatue.h:38
@ daCstatueWarpMode_Ground
Definition d_a_cstatue.h:40
@ daCstatueWarpMode_Active
Definition d_a_cstatue.h:39
daCstatue_DemoMode
Definition d_a_cstatue.h:31
@ daCstatue_DemoMode_1
Definition d_a_cstatue.h:33
@ daCstatue_DemoMode_2
Definition d_a_cstatue.h:34
@ daCstatue_DemoMode_3
Definition d_a_cstatue.h:35
@ daCstatue_DemoMode_0
Definition d_a_cstatue.h:32
daCstatueType
Definition d_a_cstatue.h:43
@ daCstatueType_N
Definition d_a_cstatue.h:49
@ daCstatueType_BossLeft
Definition d_a_cstatue.h:48
@ daCstatueType_BossRight
Definition d_a_cstatue.h:47
@ daCstatueType_Normal2
Definition d_a_cstatue.h:46
@ daCstatueType_Normal
Definition d_a_cstatue.h:44
@ daCstatueType_Small
Definition d_a_cstatue.h:45
int BOOL
Definition types.h:33
signed char s8
Definition types.h:7
unsigned long u32
Definition types.h:12
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
Definition c_xyz.h:7
Definition c_phase.h:17