Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_e_pm.h
Go to the documentation of this file.
1#ifndef D_A_E_PM_H
2#define D_A_E_PM_H
3
6#include "f_op/f_op_actor.h"
7#include "d/d_bg_s_acch.h"
8#include "d/d_cc_d.h"
9#include "d/d_cc_uty.h"
10#include "d/d_msg_flow.h"
11
12class dPath;
13
22class daE_PM_c : public fopEn_enemy_c {
23public:
24 void DemoSkip(int);
25 static int DemoSkipCallBack(void*, int);
26 int CreateHeap();
27 void initCcCylinder();
28 void setCcCylinder();
30 void Particle_Set(u16, cXyz);
31 void SetAnm(int, int, f32, f32);
32 void Yazirushi();
33 void SearchRndP();
34 void SearchFarP();
35 void SearchNearP();
37 void SetGakkiEffect();
38 bool CameraSet();
39 void SetStopingCam();
40 void SetStopCam(cXyz, f32, f32, s16);
41 void SetMoveCam2(f32, f32);
42 void SetMoveCam(f32, f32);
43 void SetReleaseCam();
44 void Ap_StartAction();
45 void Ap_CreateAction();
46 void Ap_EscapeAction();
47 void AppearAction();
48 void DemoBeforeEscape();
49 void DemoAfterEscape();
50 void DemoMoveAction();
51 void WaitAction();
52 void GroundCheck();
53 void EscapeAction();
54 void DeathAction();
55 void Action();
56 void DemoBossStart2();
62 void BossAction();
63 int Execute();
68 void CreateChk();
69 void LampAction();
71 void At_Check();
72 void ObjHit();
73 void EyeMove();
74 int Draw();
75 int Delete();
76 void setBaseMtx();
79 void SkipChk();
81
82 void AppearSet() { mAppear = true; }
84 u8 SwitchChk() { return mStage; }
85 u8 DoorChk() { return mDoorAction; }
86
87private:
88 /* 0x5AC */ fpc_ProcID mPuppetID[4];
89 /* 0x5BC */ u8 field_0x5bc[0x5DC - 0x5BC];
90 /* 0x5DC */ u8 mDoorAction;
91 /* 0x5E0 */ dPath* mpPath;
92 /* 0x5E4 */ Vec mPoint;
93 /* 0x5F0 */ u8 mPathIndex;
94 /* 0x5F4 */ int mPointIndex;
95 /* 0x5F8 */ u8 mBossHealth;
96 /* 0x5FC */ f32 field_0x5fc;
97 /* 0x600 */ u8 mPuppetNum;
98 /* 0x602 */ s16 mTargetAngleY;
99 /* 0x604 */ s16 mHeadAngleX;
100 /* 0x606 */ s16 mHeadAngleZ;
102 /* 0x60C */ f32 mTargetSpeed;
103 /* 0x610 */ u8 mAction;
104 /* 0x611 */ u8 mMode;
105 /* 0x612 */ u8 mDemoMode;
106 /* 0x613 */ u8 field_0x613;
107 /* 0x614 */ u8 mPuppetDelete;
108 /* 0x616 */ s16 mIFrameTimer;
109 /* 0x618 */ u8 field_0x618;
110 /* 0x619 */ bool mAppear;
111 /* 0x61A */ u8 mStage;
112 /* 0x61B */ u8 mSwBit;
113 /* 0x61C */ int mAnm;
114 /* 0x620 */ s16 mTimer[4];
115 /* 0x628 */ u32 mParticleKey;
116 /* 0x62C */ u32 mGakkiParticleKey[3];
118 /* 0x63C */ dMsgFlow_c mMsgFlow;
119 /* 0x688 */ u8 mEyeAnmTimer;
120 /* 0x689 */ u8 mEyeAnmFrame;
121 /* 0x68C */ cXyz mCamCenter;
122 /* 0x698 */ cXyz mCamEye;
124 /* 0x6B0 */ cXyz mCamEyeTarget;
126 /* 0x6C8 */ cXyz mCamEyeTarget2;
127 /* 0x6D4 */ f32 mCamFovY;
128 /* 0x6D8 */ bool mSecondEncounter;
130 /* 0x6E8 */ cXyz mLampPosition;
131 /* 0x6F4 */ csXyz mLampAngle;
132 /* 0x6FA */ s16 field_0x6fa;
133 /* 0x6FC */ s16 field_0x6fc;
134 /* 0x6FE */ bool mBossLightOn;
135 /* 0x6FF */ bool field_0x6ff;
139 /* 0x70C */ J3DModel* mpLampModel;
142 /* 0x71C */ u32 mShadowKey;
145 /* 0x804 */ dBgS_ObjAcch mAcch;
146 /* 0x9DC */ dCcD_Stts mCcStts;
147 /* 0xA18 */ dCcD_Cyl mCcCyl;
148 /* 0xB54 */ dCcU_AtInfo mAtInfo;
149 /* 0xB78 */ bool mHIOInit;
150};
151
152STATIC_ASSERT(sizeof(daE_PM_c) == 0xB7C);
153
154#endif /* D_A_E_PM_H */
cPhs__Step
Definition c_phase.h:8
Definition J3DJoint.h:63
Definition J3DModel.h:43
Definition Z2Creature.h:37
Definition c_sxyz.h:10
Definition d_bg_s_acch.h:15
Definition d_bg_s_acch.h:247
Definition d_cc_d.h:461
Definition d_cc_d.h:269
Definition d_msg_flow.h:49
Skullkid.
Definition d_a_e_pm.h:22
cXyz mCamCenterTarget
Definition d_a_e_pm.h:123
u8 mDoorAction
Definition d_a_e_pm.h:90
cXyz mCamEyeTarget
Definition d_a_e_pm.h:124
void AppearSet()
Definition d_a_e_pm.h:82
void EscapeAction()
Definition d_a_e_pm.cpp:1109
cXyz mCamCenterTarget2
Definition d_a_e_pm.h:125
void EyeMove()
bool CameraSet()
Definition d_a_e_pm.cpp:393
u8 SwitchChk()
Definition d_a_e_pm.h:84
void SetMoveCam2(f32, f32)
Definition d_a_e_pm.cpp:434
BOOL SearchNextPos()
Definition d_a_e_pm.cpp:367
dPath * mpPath
Definition d_a_e_pm.h:91
cXyz mLampPosition
Definition d_a_e_pm.h:130
int mPointIndex
Definition d_a_e_pm.h:94
u8 mPuppetDelete
Definition d_a_e_pm.h:107
s16 mHeadAngleZ
Definition d_a_e_pm.h:100
u8 mStage
Definition d_a_e_pm.h:111
void DemoBeforeEscape()
Definition d_a_e_pm.cpp:797
void DemoAfterEscape()
Definition d_a_e_pm.cpp:891
mDoExt_McaMorfSO * mpMorf
Definition d_a_e_pm.h:137
f32 field_0x5fc
Definition d_a_e_pm.h:96
void DemoSkip(int)
Definition d_a_e_pm.cpp:162
void Particle_Set(u16, cXyz)
Definition d_a_e_pm.cpp:284
void BossDeathAction()
u8 ActionChk()
Definition d_a_e_pm.h:83
cXyz mOldLampPosition
Definition d_a_e_pm.h:129
void BossWaitAction()
int Draw()
u8 mMode
Definition d_a_e_pm.h:104
void Action()
Definition d_a_e_pm.cpp:1219
void Ap_StartAction()
Definition d_a_e_pm.cpp:458
s16 mTimer[4]
Definition d_a_e_pm.h:114
Z2CreatureEnemy mCreatureSound
Definition d_a_e_pm.h:143
void DamageAction()
void StartAction()
dCcD_Stts mCcStts
Definition d_a_e_pm.h:146
u8 field_0x5bc[0x5DC - 0x5BC]
Definition d_a_e_pm.h:89
void SetStopingCam()
Definition d_a_e_pm.cpp:415
u32 mShadowKey
Definition d_a_e_pm.h:142
u8 mAction
Definition d_a_e_pm.h:103
s16 mTargetHeadAngleX
Definition d_a_e_pm.h:101
void LampAction()
int Execute()
dMsgFlow_c mMsgFlow
Definition d_a_e_pm.h:118
void SearchFarP()
Definition d_a_e_pm.cpp:337
Vec mPoint
Definition d_a_e_pm.h:92
u8 mPuppetNum
Definition d_a_e_pm.h:97
int ctrlJoint(J3DJoint *, J3DModel *)
Definition d_a_e_pm.cpp:261
void GakkiLoopAction(cXyz, f32)
bool mSecondEncounter
Definition d_a_e_pm.h:128
f32 mTargetSpeed
Definition d_a_e_pm.h:102
int CreateHeap()
Definition d_a_e_pm.cpp:176
u8 field_0x613
Definition d_a_e_pm.h:106
J3DModel * mpLampModel
Definition d_a_e_pm.h:139
s16 mIFrameTimer
Definition d_a_e_pm.h:108
u8 DoorChk()
Definition d_a_e_pm.h:85
void Ap_CreateAction()
Definition d_a_e_pm.cpp:602
void setLampBaseMtx()
void GroundCheck()
Definition d_a_e_pm.cpp:1063
void DeathAction()
Definition d_a_e_pm.cpp:1187
void SkipChk()
u8 mDemoMode
Definition d_a_e_pm.h:105
int Delete()
dCcD_Cyl mCcCyl
Definition d_a_e_pm.h:147
u8 mEyeAnmTimer
Definition d_a_e_pm.h:119
u8 mBossHealth
Definition d_a_e_pm.h:95
csXyz mLampAngle
Definition d_a_e_pm.h:131
s16 field_0x6fa
Definition d_a_e_pm.h:132
static int DemoSkipCallBack(void *, int)
Definition d_a_e_pm.cpp:168
mDoExt_McaMorf * mpGlowEffectMorf
Definition d_a_e_pm.h:140
cXyz mCamEye
Definition d_a_e_pm.h:122
void DemoMoveAction()
Definition d_a_e_pm.cpp:1008
bool field_0x6ff
Definition d_a_e_pm.h:135
mDoExt_McaMorf * mpTrumpetMorf
Definition d_a_e_pm.h:138
dCcU_AtInfo mAtInfo
Definition d_a_e_pm.h:148
u8 field_0x618
Definition d_a_e_pm.h:109
u32 mParticleKey
Definition d_a_e_pm.h:115
void Ap_EscapeAction()
Definition d_a_e_pm.cpp:713
s16 field_0x6fc
Definition d_a_e_pm.h:133
void SetAnm(int, int, f32, f32)
Definition d_a_e_pm.cpp:288
u8 mPathIndex
Definition d_a_e_pm.h:93
void Yazirushi()
Definition d_a_e_pm.cpp:309
f32 mCamFovY
Definition d_a_e_pm.h:127
void DemoBossStart()
void initCcCylinder()
Definition d_a_e_pm.cpp:233
mDoExt_btpAnm * mpEyeAnm
Definition d_a_e_pm.h:136
void At_Check()
void SearchNearP()
Definition d_a_e_pm.cpp:359
s16 mHeadAngleX
Definition d_a_e_pm.h:99
void setCcCylinder()
Definition d_a_e_pm.cpp:256
void SearchRndP()
Definition d_a_e_pm.cpp:318
dBgS_ObjAcch mAcch
Definition d_a_e_pm.h:145
void BossAction()
s16 mTargetAngleY
Definition d_a_e_pm.h:98
dBgS_AcchCir mAcchCir
Definition d_a_e_pm.h:144
void setGakkiBaseMtx()
u8 mEyeAnmFrame
Definition d_a_e_pm.h:120
cXyz mCamCenter
Definition d_a_e_pm.h:121
void DemoCreateAction()
void SetMoveCam(f32, f32)
Definition d_a_e_pm.cpp:443
bool mBossLightOn
Definition d_a_e_pm.h:134
void SetReleaseCam()
Definition d_a_e_pm.cpp:450
bool mHIOInit
Definition d_a_e_pm.h:149
void WaitAction()
Definition d_a_e_pm.cpp:1019
u8 mSwBit
Definition d_a_e_pm.h:112
void BossDamageAction()
void AppearAction()
Definition d_a_e_pm.cpp:773
request_of_phase_process_class mPhase
Definition d_a_e_pm.h:141
cXyz mCamEyeTarget2
Definition d_a_e_pm.h:126
void CreateAction()
u32 mGakkiParticleKey[3]
Definition d_a_e_pm.h:116
void CreateChk()
bool mAppear
Definition d_a_e_pm.h:110
fpc_ProcID mPuppetID[4]
Definition d_a_e_pm.h:88
void SetStopCam(cXyz, f32, f32, s16)
Definition d_a_e_pm.cpp:420
void SetGakkiEffect()
Definition d_a_e_pm.cpp:380
cPhs__Step Create()
void ObjHit()
void DemoBossStart2()
Definition d_a_e_pm.cpp:1262
int mAnm
Definition d_a_e_pm.h:113
void BossEscapeAction()
u32 mLampParticleKey
Definition d_a_e_pm.h:117
void setBaseMtx()
Definition f_op_actor.h:285
Definition m_Do_ext.h:331
Definition m_Do_ext.h:369
Definition m_Do_ext.h:182
STATIC_ASSERT(sizeof(daE_PM_c)==0xB7C)
int BOOL
Definition types.h:33
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
unsigned int fpc_ProcID
Definition f_pc_base.h:10
Definition mtx.h:13
Definition c_xyz.h:7
Definition d_cc_uty.h:20
Definition d_path.h:18
Definition c_phase.h:17