Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_obj_waterPillar.h
Go to the documentation of this file.
1#ifndef D_A_OBJ_WATERPILLAR_H
2#define D_A_OBJ_WATERPILLAR_H
3
4#include "d/d_bg_s_acch.h"
5#include "d/d_cc_d.h"
6#include "d/d_event_lib.h"
8
19 u8 a[8];
20};
21
23public:
26
27 /* 80D2C7B0 */ void setBaseMtx();
28 /* 80D2C838 */ static int createHeapCallBack(fopAc_ac_c*);
29 /* 80D2C858 */ int CreateHeap();
30 /* 80D2C960 */ cPhs__Step create();
31 /* 80D2CC0C */ int execute();
32 /* 80D2CE4C */ void actionMain();
33 /* 80D2CF98 */ void effectSet();
34 /* 80D2D278 */ void effectSet2();
35 /* 80D2D3FC */ void actionSwWaitInit();
36 /* 80D2D408 */ void actionSwWait();
37 /* 80D2D488 */ virtual BOOL eventStart();
38 /* 80D2D4AC */ void actionWaitInit();
39 /* 80D2D588 */ void actionWait();
40 /* 80D2D5C0 */ void actionUpFirstInit();
41 /* 80D2D6C4 */ void actionUpFirst();
42 /* 80D2D73C */ void actionUpFirstWaitInit();
43 /* 80D2D780 */ void actionUpFirstWait();
44 /* 80D2D7B8 */ void actionUpInit();
45 /* 80D2D850 */ void actionUp();
46 /* 80D2D95C */ void actionUpWaitInit();
47 /* 80D2D9A0 */ void actionUpWait();
48 /* 80D2DA58 */ void actionDownInit();
49 /* 80D2DA78 */ void actionDown();
50 /* 80D2DB68 */ void actionRockWaitInit();
51 /* 80D2DB74 */ void actionRockWait();
52 /* 80D2DC20 */ void actionRockOnInit();
53 /* 80D2DC2C */ void actionRockOn();
54 /* 80D2DD0C */ void actionEndInit();
55 /* 80D2DD18 */ void actionEnd();
56 /* 80D2DDB0 */ f32 getPillarHeight();
57 /* 80D2DDB8 */ int draw();
58 /* 80D2DE84 */ int _delete();
59
60 static dCcD_SrcGObjInf const mCcDObjInfo;
61 static dCcD_SrcGObjInf const mCcDObjCoInfo;
62 static dCcD_SrcCps mCcDCps;
63 static dCcD_SrcCyl mCcDCyl;
64
65 void onRockFlag() {
67 }
68
70 return mTopPos;
71 }
72
76
80
81private:
83 /* 0x58C */ J3DModel* mpModel;
91 /* 0xA98 */ u8 pad0[0x3C];
92 /* 0xAD4 */ f32 mScaleX; // Modified but never read; unused?
93 /* 0xAD8 */ u8 pad1[0x4];
94 /* 0xADC */ f32 mScaleZ; // Modified but never read; unused?
95 /* 0xAE0 */ f32 mCurrentHeight;
97 /* 0xB00 */ u8 mAction;
98 /* 0xB02 */ u16 mWaitFrameDelay;
99 /* 0xB04 */ f32 mTargetMaxSpeed;
100 /* 0xB08 */ u8 mSwitchNo;
101 /* 0xB09 */ u8 mType;
102 /* 0xB0A */ u8 pad2[0x6];
104 /* 0xB14 */ f32 mMaxHeight;
114 /* 0xB44 */ u8 field_0xB44; // Modified, but never read; unused?
119 /* 0xB6C */ cXyz mTopPos;
120 /* 0xB78 */ s8 mStalactiteShouldStartShaking; // Modified by d_a_obj_syRock
121 /* 0xB79 */ u8 mIsCarryingStalactite; // Modified by d_a_obj_syRock
122
124 return shape_angle.x & 0xFF;
125 }
126
128 return fopAcM_GetParamBit(this, shift, bit);
129 }
130
140
145};
146
147
148STATIC_ASSERT(sizeof(daWtPillar_c) == 0xb7c);
149
151 /* 80D2C6CC */ daWtPillar_HIO_c();
152 /* 80D2DF34 */ ~daWtPillar_HIO_c() {};
153
154 /* 0x04 */ cXyz field_0x04;
155 /* 0x10 */ csXyz field_0x10;
156 /* 0x16 */ s8 mForTesting; // "----------- テスト用 ----------" "----------- For Testing ----------" | Checkbox
157 /* 0x17 */ s8 mDisableDrawing; // "モデル描画OFF" "Model Drawing OFF" | Checkbox
158 /* 0x18 */ s8 mStopTime; // "停止時間" "Stop time" | Slider
159 /* 0x19 */ u8 mUpFirstWaitFrames; // "待ち時間" "Waiting time" | Slider
160 /* 0x1A */ u8 field_0x1A[6];
161 /* 0x20 */ f32 field_0x20; // "速度" "Velocity" | Slider
162 /* 0x24 */ u8 field_0x24[4];
163 /* 0x28 */ f32 field_0x28; // mColliderUpdateScaleFactor?
164 /* 0x2C */ u8 mUpWaitFrames; // "待ち時間" "Waiting time" | Slider
165 /* 0x2D */ u8 field_0x2D[4];
166 /* 0x34 */ f32 field_0x34; // "速度" "Velocity" | Slider
167 /* 0x38 */ u8 field_0x38[8];
168 /* 0x40 */ f32 mDownwardSpeedUnitsPerSecond; // "速度" "Velocity" | Slider
169 /* 0x44 */ f32 mEffectOscillationAngle; // "振幅Y" "Y Amplitude" | Slider
170 /* 0x48 */ f32 mEffectOscillationAmplitude; // "移動強さ" "Moving strength" | Slider
171 /* 0x4C */ f32 mEffectOscillationDampingScale; // "揺れ減衰" "Sway damping" | Slider
172 /* 0x50 */ f32 mEffectOscillationMaxDecay; // "最大減衰量" "Maximum decay" | Slider
173 /* 0x54 */ f32 mEffectOscillationMinDecay; // "最小減衰量" "Minimum decay" | Slider
174};
175
176
177#endif /* D_A_OBJ_WATERPILLAR_H */
T cLib_calcTimer(T *value)
Definition c_lib.h:79
cPhs__Step
Definition c_phase.h:8
Definition d_cc_d.h:444
Definition d_event_lib.h:24
Water Column/Pillar.
Definition d_a_obj_waterPillar.h:22
void actionRockWaitInit()
Definition d_a_obj_waterPillar.cpp:493
u8 mStartedRisingOrDoesNotRiseAndFall
Definition d_a_obj_waterPillar.h:115
cXyz mEffectOscillationVerticalOffset
Definition d_a_obj_waterPillar.h:108
f32 mEffectOscillationAngle
Definition d_a_obj_waterPillar.h:109
void actionWaitInit()
Definition d_a_obj_waterPillar.cpp:350
u8 pad1[0x4]
Definition d_a_obj_waterPillar.h:93
f32 mCurrentHeight
Definition d_a_obj_waterPillar.h:95
u8 pad2[0x6]
Definition d_a_obj_waterPillar.h:102
u8 isRockYure()
Definition d_a_obj_waterPillar.h:73
static dCcD_SrcCyl mCcDCyl
Definition d_a_obj_waterPillar.h:102
u16 mWaitFrameDelay
Definition d_a_obj_waterPillar.h:98
dBgS_AcchCir mAcchCir
Definition d_a_obj_waterPillar.h:87
u8 field_0xB44
Definition d_a_obj_waterPillar.h:114
Action_e
Definition d_a_obj_waterPillar.h:131
@ ACTION_UP_FIRST_WAIT
Definition d_a_obj_waterPillar.h:134
@ ACTION_END
Definition d_a_obj_waterPillar.h:138
@ ACTION_DOWN
Definition d_a_obj_waterPillar.h:136
@ ACTION_UP_FIRST
Definition d_a_obj_waterPillar.h:134
@ ACTION_WAIT
Definition d_a_obj_waterPillar.h:133
@ ACTION_SW_WAIT
Definition d_a_obj_waterPillar.h:132
@ ACTION_UP
Definition d_a_obj_waterPillar.h:135
@ ACTION_ROCK_WAIT
Definition d_a_obj_waterPillar.h:137
@ ACTION_ROCK_ON
Definition d_a_obj_waterPillar.h:137
@ ACTION_UP_WAIT
Definition d_a_obj_waterPillar.h:135
void effectSet()
Definition d_a_obj_waterPillar.cpp:270
f32 mTargetHeightStalactiteOffset
Definition d_a_obj_waterPillar.h:105
void actionDown()
Definition d_a_obj_waterPillar.cpp:481
cXyz getPos()
Definition d_a_obj_waterPillar.h:69
void onRockFlag()
Definition d_a_obj_waterPillar.h:65
J3DModel * mpModel
Definition d_a_obj_waterPillar.h:83
u8 mAction
Definition d_a_obj_waterPillar.h:97
u8 mType
Definition d_a_obj_waterPillar.h:101
void actionUpWaitInit()
Definition d_a_obj_waterPillar.cpp:453
u8 mSwitchNo
Definition d_a_obj_waterPillar.h:100
mDoExt_btkAnm mVerticalTextureScrollAnimation
Definition d_a_obj_waterPillar.h:84
u8 pad0[0x3C]
Definition d_a_obj_waterPillar.h:91
void setBaseMtx()
Definition d_a_obj_waterPillar.cpp:36
void actionUpFirstWait()
Definition d_a_obj_waterPillar.cpp:409
dBgS_ObjAcch mAcch
Definition d_a_obj_waterPillar.h:86
void actionDownInit()
Definition d_a_obj_waterPillar.cpp:474
u32 mWaterSurfaceParticleEmitters[2]
Definition d_a_obj_waterPillar.h:118
void actionUp()
Definition d_a_obj_waterPillar.cpp:435
u32 mBottomAndTopParticleEmmitters[7]
Definition d_a_obj_waterPillar.h:117
s8 mStalactiteShouldStartShaking
Definition d_a_obj_waterPillar.h:120
void clearRockYure()
Definition d_a_obj_waterPillar.h:77
void actionMain()
Definition d_a_obj_waterPillar.cpp:246
cM3dGCpsS mCapsuleSource
Definition d_a_obj_waterPillar.h:96
void actionUpFirstInit()
Definition d_a_obj_waterPillar.cpp:369
f32 mEffectOscillationAmplitude
Definition d_a_obj_waterPillar.h:110
static dCcD_SrcGObjInf const mCcDObjInfo
Definition d_a_obj_waterPillar.h:79
daWtPillar_c()
Definition d_a_obj_waterPillar.cpp:583
f32 mRelativeWaterHeight
Definition d_a_obj_waterPillar.h:106
void actionEndInit()
Definition d_a_obj_waterPillar.cpp:522
void actionRockOnInit()
Definition d_a_obj_waterPillar.cpp:507
dCcD_Stts mStts
Definition d_a_obj_waterPillar.h:88
cPhs__Step create()
Definition d_a_obj_waterPillar.cpp:105
static dCcD_SrcCps mCcDCps
Definition d_a_obj_waterPillar.h:96
f32 mScaleX
Definition d_a_obj_waterPillar.h:92
f32 mEffectOscillationMinDecay
Definition d_a_obj_waterPillar.h:113
u8 mPillarIsPreparingToRise
Definition d_a_obj_waterPillar.h:116
void actionRockWait()
Definition d_a_obj_waterPillar.cpp:498
int execute()
Definition d_a_obj_waterPillar.cpp:193
dCcD_Cyl mCylinderCollider
Definition d_a_obj_waterPillar.h:90
f32 mScaleZ
Definition d_a_obj_waterPillar.h:94
void actionEnd()
Definition d_a_obj_waterPillar.cpp:527
~daWtPillar_c()
Definition d_a_obj_waterPillar.h:25
void effectSet2()
Definition d_a_obj_waterPillar.cpp:301
mDoExt_bckAnm mModelRotationAnimation
Definition d_a_obj_waterPillar.h:85
void actionUpWait()
Definition d_a_obj_waterPillar.cpp:464
f32 mEffectOscillationDampingScale
Definition d_a_obj_waterPillar.h:111
s32 getEventID()
Definition d_a_obj_waterPillar.h:123
virtual BOOL eventStart()
Definition d_a_obj_waterPillar.cpp:344
f32 mMaxHeight
Definition d_a_obj_waterPillar.h:104
f32 getPillarHeight()
Definition d_a_obj_waterPillar.cpp:533
f32 mTargetMaxSpeed
Definition d_a_obj_waterPillar.h:99
dCcD_Cps mCapsuleCollider
Definition d_a_obj_waterPillar.h:89
void actionSwWaitInit()
Definition d_a_obj_waterPillar.cpp:329
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_obj_waterPillar.cpp:46
void actionUpInit()
Definition d_a_obj_waterPillar.cpp:417
void actionUpFirstWaitInit()
Definition d_a_obj_waterPillar.cpp:397
cXyz mTopPos
Definition d_a_obj_waterPillar.h:119
void actionRockOn()
Definition d_a_obj_waterPillar.cpp:512
f32 mFirstTargetHeight
Definition d_a_obj_waterPillar.h:103
int CreateHeap()
Definition d_a_obj_waterPillar.cpp:51
request_of_phase_process_class mPhase
Definition d_a_obj_waterPillar.h:82
void actionWait()
Definition d_a_obj_waterPillar.cpp:360
s32 getParam(u8 shift, u8 bit)
Definition d_a_obj_waterPillar.h:127
static dCcD_SrcGObjInf const mCcDObjCoInfo
Definition d_a_obj_waterPillar.h:85
Type_e
Definition d_a_obj_waterPillar.h:141
@ STATIC
Definition d_a_obj_waterPillar.h:142
@ RISES_AND_FALLS
Definition d_a_obj_waterPillar.h:143
int draw()
Definition d_a_obj_waterPillar.cpp:538
void actionSwWait()
Definition d_a_obj_waterPillar.cpp:334
u32 mEffectOscillationAngleStep
Definition d_a_obj_waterPillar.h:107
void actionUpFirst()
Definition d_a_obj_waterPillar.cpp:387
int _delete()
Definition d_a_obj_waterPillar.cpp:554
u8 mIsCarryingStalactite
Definition d_a_obj_waterPillar.h:121
f32 mEffectOscillationMaxDecay
Definition d_a_obj_waterPillar.h:112
Definition m_Do_hostIO.h:5
STATIC_ASSERT(sizeof(daWtPillar_c)==0xb7c)
u32 fopAcM_GetParamBit(void *ac, u8 shift, u8 bit)
Definition f_op_actor_mng.h:170
Definition d_a_ep.cpp:155
s16 x
Definition vec.h:19
Definition c_m3d_g_cps.h:7
Definition d_a_hozelda.cpp:20
Definition d_a_ep.cpp:66
Definition d_a_npc_fguard.cpp:98
Definition d_a_npc_fguard.cpp:94
Definition d_a_npc_fguard.cpp:86
Definition d_cc_d.h:107
Definition d_a_npc_fguard.cpp:74
Definition d_cc_d.h:85
Definition d_a_npc_fguard.cpp:70
Definition d_a_obj_waterPillar.h:150
f32 field_0x28
Definition d_a_obj_waterPillar.h:163
f32 mEffectOscillationAngle
Definition d_a_obj_waterPillar.h:169
u8 field_0x24[4]
Definition d_a_obj_waterPillar.h:162
f32 mEffectOscillationMaxDecay
Definition d_a_obj_waterPillar.h:172
daWtPillar_HIO_c()
Definition d_a_obj_waterPillar.cpp:18
u8 mUpFirstWaitFrames
Definition d_a_obj_waterPillar.h:159
f32 mEffectOscillationMinDecay
Definition d_a_obj_waterPillar.h:173
~daWtPillar_HIO_c()
Definition d_a_obj_waterPillar.h:152
f32 field_0x34
Definition d_a_obj_waterPillar.h:166
f32 mEffectOscillationDampingScale
Definition d_a_obj_waterPillar.h:171
csXyz field_0x10
Definition d_a_obj_waterPillar.h:155
u8 mUpWaitFrames
Definition d_a_obj_waterPillar.h:164
f32 field_0x20
Definition d_a_obj_waterPillar.h:161
u8 field_0x2D[4]
Definition d_a_obj_waterPillar.h:165
u8 field_0x1A[6]
Definition d_a_obj_waterPillar.h:160
s8 mStopTime
Definition d_a_obj_waterPillar.h:158
cXyz field_0x04
Definition d_a_obj_waterPillar.h:154
u8 field_0x38[8]
Definition d_a_obj_waterPillar.h:167
s8 mDisableDrawing
Definition d_a_obj_waterPillar.h:157
f32 mEffectOscillationAmplitude
Definition d_a_obj_waterPillar.h:170
s8 mForTesting
Definition d_a_obj_waterPillar.h:156
f32 mDownwardSpeedUnitsPerSecond
Definition d_a_obj_waterPillar.h:168
Definition d_a_obj_waterPillar.h:18
u8 a[8]
Definition d_a_obj_waterPillar.h:19
Definition d_a_ep.cpp:19
csXyz shape_angle
Definition f_op_actor.h:216
Definition d_a_hozelda.cpp:56
Definition d_a_hozelda.cpp:47
Definition d_a_hozelda.cpp:14
int BOOL
Definition types.h:27
signed char s8
Definition types.h:4
unsigned long u32
Definition types.h:10
float f32
Definition types.h:22
unsigned short u16
Definition types.h:9
signed long s32
Definition types.h:6
unsigned char u8
Definition types.h:8