Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_e_ge.h
Go to the documentation of this file.
1#ifndef D_A_E_GE_H
2#define D_A_E_GE_H
3
4#include "d/d_bg_s_acch.h"
5#include "d/d_cc_d.h"
6#include "d/d_cc_uty.h"
8
17class daE_GE_c : public fopEn_enemy_c {
18public:
19 typedef void (daE_GE_c::*actionFunc)();
20
21 void bckSet(int, f32, u8, f32);
22 bool bckCheck(int);
23 int draw();
24 bool checkBeforeBg(int, f32);
25 void setActionMode(int);
26 void damage_check();
27 bool checkOtherAttacker();
28 bool searchNextAttacker();
30 void setAddCalcSpeed(cXyz&, cXyz const&, f32, f32, f32, f32);
32 void executeWait();
33 void executeFly();
34 bool checkAttackPossible(s16, bool);
35 void executeAttack();
36 void setBackAnime(int);
37 void executeBack();
38 void executeDown();
39 void setSurpriseTime(s16);
40 void setSurprise();
41 void executeSurprise();
42 void setCaw();
43 void executeCaw();
44 void executeWind();
45 void executeShield();
46 void action();
47 void mtx_set();
48 void cc_set();
49 int execute();
50 int _delete();
51 int CreateHeap();
52 int create();
53
55
57
58 s32 getMoveType() { // needs to be s32 for some reason
59 return mMoveType;
60 }
61
62 u8 getGroupNo() { return mGroupNo; }
63
64private:
70 /* 0x874 */ dCcD_Stts mStts;
71 /* 0x8B0 */ dCcD_Sph mSphere;
72 /* 0x9E8 */ dCcD_Sph mSphere2;
73 /* 0xB20 */ dCcU_AtInfo mAtInfo;
74 /* 0xB44 */ u32 mSmokeKey;
75 /* 0xB48 */ u32 mSmokeKey2;
76 /* 0xB4C */ cXyz field_0xb4c;
77 /* 0xB58 */ f32 field_0xb58;
78 /* 0xB5C */ f32 field_0xb5c;
79 /* 0xB60 */ f32 field_0xb60;
80 /* 0xB64 */ f32 field_0xb64;
81 /* 0xB68 */ f32 field_0xb68;
82 /* 0xB6C */ u8 field_0xB6C[0xB70 - 0xB6C];
83 /* 0xB70 */ int mActionMode;
84 /* 0xB74 */ int mPrevActionMode;
85 /* 0xB78 */ int mMode;
86 /* 0xB7C */ int mSubMode;
87 /* 0xB80 */ int mBackAnimeTimer;
88 /* 0xB84 */ u32 mShadowKey;
89 /* 0xB88 */ s16 mHitDirectionY; // not really used
90 /* 0xB8A */ s16 field_0xb8a;
91 /* 0xB8C */ s16 field_0xb8c;
92 /* 0xB8E */ s16 field_0xb8e[2];
94 /* 0xB94 */ s16 mSurpriseTime;
95 /* 0xB96 */ s16 mAnmChangeTimer;
96 /* 0xB98 */ s16 mCircleFlyScale;
97 /* 0xB9A */ u8 mMoveType;
98 /* 0xB9B */ u8 mGroupNo;
99 /* 0xB9C */ u8 mSwitch;
100 /* 0xB9D */ u8 field_0xb9d;
101 /* 0xB9E */ u8 field_0xb9e;
102 /* 0xB9F */ u8 mHIOInit;
103
104 static actionFunc l_actionmenu[9];
105};
106
107STATIC_ASSERT(sizeof(daE_GE_c) == 0xBA0);
108
109#endif /* D_A_E_GE_H */
Definition Z2Creature.h:37
Definition d_bg_s_acch.h:15
Definition d_bg_s_acch.h:247
Definition d_cc_d.h:473
Definition d_cc_d.h:269
Guay.
Definition d_a_e_ge.h:17
bool bckCheck(int)
Definition d_a_e_ge.cpp:73
u8 mSwitch
Definition d_a_e_ge.h:99
bool checkCircleSpeedAdd(cXyz *, cXyz *)
Definition d_a_e_ge.cpp:285
u32 mSmokeKey2
Definition d_a_e_ge.h:75
u32 mShadowKey
Definition d_a_e_ge.h:88
s16 getSurpriseTime()
Definition d_a_e_ge.h:54
int execute()
Definition d_a_e_ge.cpp:1192
f32 field_0xb68
Definition d_a_e_ge.h:81
s16 field_0xb8c
Definition d_a_e_ge.h:91
s16 mCircleFlyScale
Definition d_a_e_ge.h:96
bool searchNextAttacker()
Definition d_a_e_ge.cpp:269
s32 getMoveType()
Definition d_a_e_ge.h:58
s16 mAnmChangeTimer
Definition d_a_e_ge.h:95
void executeCaw()
Definition d_a_e_ge.cpp:949
void executeSurprise()
Definition d_a_e_ge.cpp:883
f32 field_0xb58
Definition d_a_e_ge.h:77
s16 mSurpriseTime
Definition d_a_e_ge.h:94
s32 getActionMode()
Definition d_a_e_ge.h:56
u8 field_0xb9d
Definition d_a_e_ge.h:100
bool checkBeforeBg(int, f32)
Definition d_a_e_ge.cpp:100
void bckSet(int, f32, u8, f32)
Definition d_a_e_ge.cpp:68
void executeWind()
Definition d_a_e_ge.cpp:990
void(daE_GE_c::*) actionFunc()
Definition d_a_e_ge.h:19
u8 field_0xb9e
Definition d_a_e_ge.h:101
int draw()
Definition d_a_e_ge.cpp:83
void action()
Definition d_a_e_ge.cpp:1090
void executeBack()
Definition d_a_e_ge.cpp:658
dBgS_AcchCir mAcchCir
Definition d_a_e_ge.h:68
void setActionMode(int)
Definition d_a_e_ge.cpp:185
int mSubMode
Definition d_a_e_ge.h:86
int create()
Definition d_a_e_ge.cpp:1275
mDoExt_McaMorfSO * mpMorfSO
Definition d_a_e_ge.h:66
bool checkAttackPossible(s16, bool)
Definition d_a_e_ge.cpp:471
void setAddCalcSpeed(cXyz &, cXyz const &, f32, f32, f32, f32)
Definition d_a_e_ge.cpp:293
int mBackAnimeTimer
Definition d_a_e_ge.h:87
s16 mDamageCooldownTimer
Definition d_a_e_ge.h:93
cXyz calcCircleFly(cXyz *, cXyz *, s16, f32, s16, f32)
Definition d_a_e_ge.cpp:316
int mPrevActionMode
Definition d_a_e_ge.h:84
u8 mGroupNo
Definition d_a_e_ge.h:98
void executeShield()
Definition d_a_e_ge.cpp:1049
int mMode
Definition d_a_e_ge.h:85
request_of_phase_process_class mPhaseReq
Definition d_a_e_ge.h:65
s16 mHitDirectionY
Definition d_a_e_ge.h:89
int _delete()
Definition d_a_e_ge.cpp:1240
int CreateHeap()
Definition d_a_e_ge.cpp:1259
s16 field_0xb8e[2]
Definition d_a_e_ge.h:92
u8 mHIOInit
Definition d_a_e_ge.h:102
f32 field_0xb64
Definition d_a_e_ge.h:80
void mtx_set()
Definition d_a_e_ge.cpp:1153
void setCaw()
Definition d_a_e_ge.cpp:942
u8 field_0xB6C[0xB70 - 0xB6C]
Definition d_a_e_ge.h:82
dCcD_Sph mSphere
Definition d_a_e_ge.h:71
u32 mSmokeKey
Definition d_a_e_ge.h:74
dCcD_Sph mSphere2
Definition d_a_e_ge.h:72
f32 field_0xb60
Definition d_a_e_ge.h:79
void executeDown()
Definition d_a_e_ge.cpp:788
u8 getGroupNo()
Definition d_a_e_ge.h:62
dBgS_ObjAcch mObjAcch
Definition d_a_e_ge.h:69
s16 field_0xb8a
Definition d_a_e_ge.h:90
void executeFly()
Definition d_a_e_ge.cpp:382
bool checkOtherAttacker()
Definition d_a_e_ge.cpp:254
Z2CreatureEnemy mSound
Definition d_a_e_ge.h:67
dCcU_AtInfo mAtInfo
Definition d_a_e_ge.h:73
cXyz field_0xb4c
Definition d_a_e_ge.h:76
void setSurprise()
Definition d_a_e_ge.cpp:876
void cc_set()
Definition d_a_e_ge.cpp:1160
static actionFunc l_actionmenu[9]
Definition d_a_e_ge.h:1084
void damage_check()
Definition d_a_e_ge.cpp:198
void setSurpriseTime(s16)
Definition d_a_e_ge.cpp:870
f32 field_0xb5c
Definition d_a_e_ge.h:78
void executeWait()
Definition d_a_e_ge.cpp:333
void setBackAnime(int)
Definition d_a_e_ge.cpp:639
u8 mMoveType
Definition d_a_e_ge.h:97
int mActionMode
Definition d_a_e_ge.h:83
dCcD_Stts mStts
Definition d_a_e_ge.h:70
void executeAttack()
Definition d_a_e_ge.cpp:485
Definition f_op_actor.h:285
Definition m_Do_ext.h:331
STATIC_ASSERT(sizeof(daE_GE_c)==0xBA0)
unsigned long u32
Definition types.h:12
signed short int s16
Definition types.h:9
float f32
Definition types.h:25
signed long s32
Definition types.h:11
unsigned char u8
Definition types.h:8
Definition c_xyz.h:7
Definition d_cc_uty.h:20
Definition c_phase.h:17