Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_obj_pillar.h
Go to the documentation of this file.
1#ifndef D_A_OBJ_PILLAR_H
2#define D_A_OBJ_PILLAR_H
3
6#include "d/d_cc_d.h"
7
17public:
26
27 struct sdata_t {
28 /* 0x0 */ u8 mPower;
29 /* 0x1 */ u8 field_0x1;
30 /* 0x2 */ s16 mInitAngleX;
31 /* 0x4 */ s16 mTime;
32 /* 0x6 */ s16 mSpeedY;
33 /* 0x8 */ s16 mMaxChangeX;
34 /* 0xA */ s16 mMinChangeX;
35 };
36
37 /* 80CAF4B4 */ void setBaseMtx();
38 /* 80CAF8A4 */ int create1st();
39 /* 80CAFB44 */ bool checkAttacked();
40 /* 80CAFC08 */ void on_switch();
41 /* 80CAFD64 */ int checkShake();
42 /* 80CAFF60 */ void setShake_rcrash();
43 /* 80CB01E0 */ void setShake_strong();
44 /* 80CB022C */ void setShake_weak();
45 /* 80CB0278 */ void switch_proc_call();
46 /* 80CB031C */ void actionSwOnWait();
47 /* 80CB0378 */ void actionSwOn();
48 /* 80CB03CC */ void actionEnd();
49
50 /* 80CAF7A8 */ virtual int CreateHeap();
51 /* 80CAF5EC */ virtual int Create();
52 /* 80CB03D0 */ virtual int Execute(Mtx**);
53 /* 80CB0658 */ virtual int Draw();
54 /* 80CB0740 */ virtual int Delete();
55
56 u16 getTimer() { return fopAcM_GetParamBit(this, 0x18, 8); }
57 u8 checkShadow() { return fopAcM_GetParamBit(this, 8, 8); }
58 u8 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); }
59 u8 getType() { return fopAcM_GetParamBit(this, 0x10, 8); }
60
61
62 u8 getMdlType() { return field_0x73e & 0xF; }
63 bool checkRollAttack() { return mIsRollAttack == true; }
64 void setShake(int i_shake) { mShake = i_shake; }
66
68 /* 0x5A8 */ J3DModel* mpModel;
71 /* 0x724 */ J3DModel* mpShadowModel;
72 /* 0x728 */ u8 field_0x728[0x72D - 0x728];
73 /* 0x72D */ u8 mIsPrmInit;
74 /* 0x72E */ s16 mRotY;
75 /* 0x730 */ u8 field_0x730[0x732 - 0x730];
76 /* 0x732 */ u8 mIsRollAttack;
77 /* 0x733 */ u8 mAction;
78 /* 0x734 */ s16 field_0x734;
79 /* 0x736 */ s16 mTimer;
80 /* 0x738 */ int mShake;
81 /* 0x73C */ s16 field_0x73c;
82 /* 0x73E */ u16 field_0x73e;
83 /* 0x740 */ u8 mMdlType;
84 /* 0x741 */ u8 mShakeMode;
85 /* 0x742 */ sdata_t mShakeData;
86 /* 0x74E */ s16 mQuakeTimer;
87};
88
89STATIC_ASSERT(sizeof(daPillar_c) == 0x750);
90
92public:
93 /* 80CAF32C */ daPillar_HIO_c();
94 /* 80CB0928 */ virtual ~daPillar_HIO_c() {}
95
97 /* 0x10 */ u8 field_0x10[0x1C - 0x10];
98 /* 0x1C */ f32 field_0x1c;
99 /* 0x20 */ f32 field_0x20;
100 /* 0x24 */ u8 field_0x24;
101 /* 0x25 */ u8 field_0x25;
102 /* 0x26 */ u8 field_0x26;
103 /* 0x27 */ u8 mIsAdjust;
104};
105
106
107#endif /* D_A_OBJ_PILLAR_H */
T cLib_calcTimer(T *value)
Definition c_lib.h:79
Definition d_bg_s_movebg_actor.h:10
Definition d_a_obj_pillar.h:91
daPillar_HIO_c()
Definition d_a_obj_pillar.cpp:72
virtual ~daPillar_HIO_c()
Definition d_a_obj_pillar.h:94
u8 field_0x25
Definition d_a_obj_pillar.h:101
u8 field_0x24
Definition d_a_obj_pillar.h:100
u8 field_0x26
Definition d_a_obj_pillar.h:102
f32 field_0x20
Definition d_a_obj_pillar.h:99
daPillar_c::sdata_t mShakeData
Definition d_a_obj_pillar.h:96
u8 field_0x10[0x1C - 0x10]
Definition d_a_obj_pillar.h:97
u8 mIsAdjust
Definition d_a_obj_pillar.h:103
f32 field_0x1c
Definition d_a_obj_pillar.h:98
Forest Temple Totem Pole.
Definition d_a_obj_pillar.h:16
bool checkRollAttack()
Definition d_a_obj_pillar.h:63
void setBaseMtx()
Definition d_a_obj_pillar.cpp:100
u8 mIsRollAttack
Definition d_a_obj_pillar.h:76
virtual int Execute(Mtx **)
Definition d_a_obj_pillar.cpp:401
void setShake_rcrash()
Definition d_a_obj_pillar.cpp:317
dCcD_Cyl mCylCollider
Definition d_a_obj_pillar.h:70
int mShake
Definition d_a_obj_pillar.h:80
request_of_phase_process_class mPhase
Definition d_a_obj_pillar.h:67
int checkShake()
Definition d_a_obj_pillar.cpp:285
u8 field_0x728[0x72D - 0x728]
Definition d_a_obj_pillar.h:72
u8 mIsPrmInit
Definition d_a_obj_pillar.h:73
u8 mAction
Definition d_a_obj_pillar.h:77
u16 field_0x73e
Definition d_a_obj_pillar.h:82
u16 getTimer()
Definition d_a_obj_pillar.h:56
virtual int Draw()
Definition d_a_obj_pillar.cpp:468
virtual int CreateHeap()
Definition d_a_obj_pillar.cpp:178
s16 field_0x73c
Definition d_a_obj_pillar.h:81
bool checkAttacked()
Definition d_a_obj_pillar.cpp:228
u8 field_0x730[0x732 - 0x730]
Definition d_a_obj_pillar.h:75
u8 checkShadow()
Definition d_a_obj_pillar.h:57
sdata_t mShakeData
Definition d_a_obj_pillar.h:85
void actionSwOn()
Definition d_a_obj_pillar.cpp:387
void switch_proc_call()
Definition d_a_obj_pillar.cpp:361
u8 mShakeMode
Definition d_a_obj_pillar.h:84
void actionEnd()
Definition d_a_obj_pillar.cpp:398
J3DModel * mpModel
Definition d_a_obj_pillar.h:68
virtual int Delete()
Definition d_a_obj_pillar.cpp:485
J3DModel * mpShadowModel
Definition d_a_obj_pillar.h:71
u8 getType()
Definition d_a_obj_pillar.h:59
void setShake_strong()
Definition d_a_obj_pillar.cpp:346
s16 field_0x734
Definition d_a_obj_pillar.h:78
shake_e
Definition d_a_obj_pillar.h:18
@ SHAKE_WEAK
Definition d_a_obj_pillar.h:21
@ SHAKE_CRASH_LV1
Definition d_a_obj_pillar.h:22
@ SHAKE_NONE
Definition d_a_obj_pillar.h:24
@ SHAKE_STRONG
Definition d_a_obj_pillar.h:20
@ SHAKE_CRASH
Definition d_a_obj_pillar.h:19
@ SHAKE_IRONBALL
Definition d_a_obj_pillar.h:23
void setAction(u8 i_action)
Definition d_a_obj_pillar.h:65
s16 mTimer
Definition d_a_obj_pillar.h:79
virtual int Create()
Definition d_a_obj_pillar.cpp:115
int create1st()
Definition d_a_obj_pillar.cpp:199
void setShake(int i_shake)
Definition d_a_obj_pillar.h:64
u8 getMdlType()
Definition d_a_obj_pillar.h:62
dCcD_Stts mColliderStts
Definition d_a_obj_pillar.h:69
void on_switch()
Definition d_a_obj_pillar.cpp:251
void setShake_weak()
Definition d_a_obj_pillar.cpp:352
s16 mQuakeTimer
Definition d_a_obj_pillar.h:86
s16 mRotY
Definition d_a_obj_pillar.h:74
u8 mMdlType
Definition d_a_obj_pillar.h:83
u8 getSwbit()
Definition d_a_obj_pillar.h:58
void actionSwOnWait()
Definition d_a_obj_pillar.cpp:373
Definition m_Do_hostIO.h:5
STATIC_ASSERT(sizeof(daPillar_c)==0x750)
u32 fopAcM_GetParamBit(void *ac, u8 shift, u8 bit)
Definition f_op_actor_mng.h:170
f32 Mtx[3][4]
Definition mtx.h:15
Definition d_a_ep.cpp:155
Definition d_a_npc_fguard.cpp:86
Definition d_a_npc_fguard.cpp:70
Definition d_a_obj_pillar.h:27
s16 mInitAngleX
Definition d_a_obj_pillar.h:30
u8 mPower
Definition d_a_obj_pillar.h:28
u8 field_0x1
Definition d_a_obj_pillar.h:29
s16 mSpeedY
Definition d_a_obj_pillar.h:32
s16 mMaxChangeX
Definition d_a_obj_pillar.h:33
s16 mTime
Definition d_a_obj_pillar.h:31
s16 mMinChangeX
Definition d_a_obj_pillar.h:34
Definition d_a_hozelda.cpp:14
float f32
Definition types.h:22
signed short s16
Definition types.h:5
unsigned short u16
Definition types.h:9
unsigned char u8
Definition types.h:8