Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_e_ym.h
Go to the documentation of this file.
1#ifndef D_A_E_YM_H
2#define D_A_E_YM_H
3
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_path.h"
11
13public:
14 /* 8080812C */ daE_YM_HIO_c();
15
16 /* 80815458 */ virtual ~daE_YM_HIO_c();
17
18 /* 0x04 */ s8 field_0x4;
19 /* 0x08 */ f32 mModelSize;
21 /* 0x10 */ f32 mMoveSpeed;
22 /* 0x14 */ f32 mFlyMoveSpeed;
23 /* 0x18 */ f32 mFlyAttackSpeed;
25 /* 0x20 */ f32 mMoveRange;
26};
27
36class daE_YM_c : public fopEn_enemy_c {
37public:
39 /* 0 */ ACT_WAIT,
40 /* 1 */ ACT_MOVE,
41 /* 2 */ ACT_ESCAPE,
42 /* 3 */ ACT_DOWN,
43 /* 4 */ ACT_WIND,
44 /* 5 */ ACT_SURPRISE,
45 /* 6 */ ACT_BACK,
46 /* 7 */ ACT_FALL,
47 /* 8 */ ACT_ATTACK,
49 /* 10 */ ACT_DEFENSE,
50 /* 11 */ ACT_FLY,
52 /* 13 */ ACT_RAIL,
53 /* 14 */ ACT_BACK_RAIL,
54 /* 15 */ ACT_ELECTRIC,
55 /* 16 */ ACT_SWITCH,
56 /* 17 */ ACT_FIRE,
57 /* 18 */ ACT_RIVER,
58 };
59
60 u8 getTagNo() { return mTagNo; }
61
63
65
66 /* 80808184 */ BOOL checkBck(char const*, int);
67 /* 808081E0 */ void bckSet(int, u8, f32, f32);
68 /* 80808328 */ void bckSetFly(int, u8, f32, f32);
69 /* 808083CC */ int draw();
70 /* 80808768 */ void setDigEffect();
71 /* 80808884 */ void setElecEffect1();
72 /* 808089DC */ void setElecEffect2();
73 /* 80808B3C */ void setFireEffect();
74 /* 80808E34 */ bool checkWallCrash();
75 /* 80809000 */ void checkWolfBark();
76 /* 80809228 */ void checkSurpriseLock();
77 /* 8080963C */ void checkRailSurprise();
78 /* 808096EC */ void checkSurpriseNear();
79 /* 80809D6C */ void setNormalCc();
80 /* 80809D84 */ void setAppear();
81 /* 80809DA8 */ void setMoveSound(int);
82 /* 80809EF0 */ void setTurnSound();
83 /* 80809F9C */ void setActionMode(int);
84 /* 80809FC4 */ void executeWait();
85 /* 8080A57C */ void executeMove();
86 /* 8080ACB4 */ void executeEscape();
87 /* 8080B444 */ void executeDown();
88 /* 8080BB7C */ void damage_check();
89 /* 8080BCFC */ void executeWind();
90 /* 8080C05C */ void getSurpriseType();
91 /* 8080C1FC */ void setSurpriseAway();
92 /* 8080C24C */ void setGoHomeType();
93 /* 8080C374 */ void executeSurprise();
94 /* 8080CEE0 */ void executeBack();
95 /* 8080CFC8 */ void executeFall();
96 /* 8080D2C8 */ void executeAttack();
97 /* 8080D990 */ void checkAttackEnd();
98 /* 8080DB58 */ void setAttackMotion();
99 /* 8080DC5C */ void executeAttackWall();
100 /* 8080E26C */ void executeDefense();
101 /* 8080E49C */ void checkFlyTerritory();
102 /* 8080E630 */ void initFly();
103 /* 8080E6A0 */ void executeFly();
104 /* 8080F8C8 */ void setInclination();
105 /* 8080F92C */ void executeFlyAttack();
106 /* 80810084 */ void setNextPathPoint();
107 /* 8081013C */ void checkRailDig();
108 /* 8081030C */ void executeRail();
109 /* 80810690 */ void executeBackRail();
110 /* 80810DF8 */ void checkElectricStart();
111 /* 80810E64 */ void executeElectric();
112 /* 8081105C */ void executeSwitch();
113 /* 80811740 */ void initFireFly(int);
114 /* 80811838 */ void executeFire();
115 /* 808120B0 */ void setRiverAttention();
116 /* 808123C4 */ void setLockByCargo();
117 /* 808123D0 */ void executeRiver();
118 /* 80812FCC */ void checkFrinedSamePos();
119 /* 8081300C */ void action();
120 /* 80813528 */ void mtx_set();
121 /* 808135B0 */ void cc_set();
122 /* 808138AC */ int execute();
123 /* 80813A38 */ int _delete();
124 /* 80813AF0 */ int CreateHeap();
125 /* 80813EA4 */ void checkBeforeBg(s16);
126 /* 808143A0 */ void checkBeforeGround();
127 /* 808144D8 */ void checkInitialWall();
128 /* 80814758 */ void checkWall();
129 /* 80814AF0 */ void setHideType();
130 /* 80814BA4 */ int create();
131
135
136private:
141 /* 0x660 */ u8 field_0x660[0x664 - 0x660];
143 /* 0x668 */ csXyz field_0x668;
144 /* 0x66E */ u8 field_0x66E[0x670 - 0x66E];
145 /* 0x670 */ cXyz field_0x670;
146 /* 0x67C */ cXyz field_0x67c;
147 /* 0x688 */ f32 field_0x688;
148 /* 0x68C */ f32 field_0x68c;
149 /* 0x690 */ int mAction;
150 /* 0x694 */ int mLastAction;
151 /* 0x698 */ int mMode;
152 /* 0x69C */ u32 field_0x69c;
153 /* 0x6A0 */ u8 mType;
154 /* 0x6A1 */ u8 field_0x6a1;
155 /* 0x6A2 */ u8 mSwitchBit;
156 /* 0x6A3 */ u8 field_0x6a3;
157 /* 0x6A4 */ u8 mIsHide;
158 /* 0x6A5 */ u8 field_0x6a5;
159 /* 0x6A6 */ u8 field_0x6a6;
160 /* 0x6A7 */ u8 field_0x6a7;
161 /* 0x6A8 */ u8 field_0x6a8;
162 /* 0x6A9 */ u8 field_0x6a9;
163 /* 0x6AA */ u8 mFriendFlag;
164 /* 0x6AB */ u8 field_0x6AB[0x6AC - 0x6AB];
165 /* 0x6AC */ dPath* mpPath;
166 /* 0x6B0 */ dPath* field_0x6b0;
167 /* 0x6B4 */ s8 field_0x6b4;
168 /* 0x6B5 */ u8 field_0x6B5[0x6B8 - 0x6B5];
169 /* 0x6B8 */ cXyz mTagPos;
170 /* 0x6C4 */ cXyz* mTagPosP;
171 /* 0x6C8 */ u8 mTagNo;
172 /* 0x6C9 */ u8 field_0x6c9;
173 /* 0x6CA */ u8 mFlyType;
174 /* 0x6CB */ u8 field_0x6cb;
175 /* 0x6CC */ u8 field_0x6cc;
176 /* 0x6CD */ u8 field_0x6CD[0x6CF - 0x6CD];
177 /* 0x6CF */ u8 field_0x6cf;
178 /* 0x6D0 */ cXyz* field_0x6d0;
179 /* 0x6D4 */ f32 field_0x6d4;
180 /* 0x6D8 */ f32 mDistToPlayer;
181 /* 0x6DC */ f32 field_0x6dc;
182 /* 0x6E0 */ f32 field_0x6e0;
183 /* 0x6E4 */ s16 field_0x6e4;
184 /* 0x6E6 */ s16 field_0x6e6;
185 /* 0x6E8 */ s16 field_0x6e8;
186 /* 0x6EA */ s16 mAngleToPlayer;
187 /* 0x6EC */ f32 field_0x6ec;
188 /* 0x6F0 */ s16 field_0x6f0;
189 /* 0x6F2 */ s16 field_0x6f2;
190 /* 0x6F4 */ s16 field_0x6f4;
191 /* 0x6F6 */ s16 field_0x6f6;
192 /* 0x6F8 */ s16 field_0x6f8;
193 /* 0x6FA */ s16 field_0x6fa;
194 /* 0x6FC */ s16 field_0x6fc;
195 /* 0x6FE */ s16 field_0x6fe;
196 /* 0x700 */ s16 field_0x700;
197 /* 0x702 */ u8 field_0x702[0x704 - 0x702];
198 /* 0x704 */ int field_0x704;
199 /* 0x708 */ s16 field_0x708;
200 /* 0x70A */ s16 field_0x70a;
201 /* 0x70C */ s16 field_0x70c;
202 /* 0x70E */ s16 field_0x70e;
203 /* 0x710 */ s16 field_0x710;
204 /* 0x712 */ u8 field_0x712[0x714 - 0x712];
205 /* 0x714 */ int field_0x714;
206 /* 0x718 */ int field_0x718;
207 /* 0x71C */ u8 field_0x71c;
208 /* 0x71D */ u8 field_0x71d;
209 /* 0x71E */ u8 field_0x71E[0x720 - 0x71E];
213 /* 0x974 */ dCcD_Sph mSphCc;
214 /* 0xAAC */ dCcU_AtInfo mAtInfo;
215 /* 0xAD0 */ u32 field_0xad0;
216 /* 0xAD4 */ u32 field_0xad4;
217 /* 0xAD8 */ u32 field_0xad8;
218 /* 0xADC */ u32 field_0xadc;
219 /* 0xAE0 */ u32 field_0xae0;
220 /* 0xAE4 */ u32 field_0xae4;
221 /* 0xAE8 */ u32 field_0xae8[3];
222 /* 0xAF4 */ u8 field_0xaf4;
223};
224
225STATIC_ASSERT(sizeof(daE_YM_c) == 0xAF8);
226
227struct E_YM_n {
228 static dCcD_SrcSph cc_sph_src;
229};
230
231
232#endif /* D_A_E_YM_H */
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition Z2Creature.h:154
Definition d_cc_d.h:432
Definition d_a_e_ym.h:12
s8 field_0x4
Definition d_a_e_ym.h:18
f32 mSurpriseDistance
Definition d_a_e_ym.h:24
f32 mMoveRange
Definition d_a_e_ym.h:25
f32 mMoveSpeed
Definition d_a_e_ym.h:21
f32 mElectricInvincibilityTimeExtension
Definition d_a_e_ym.h:20
virtual ~daE_YM_HIO_c()
Definition d_a_e_ym.cpp:2074
daE_YM_HIO_c()
Definition d_a_e_ym.cpp:590
f32 mModelSize
Definition d_a_e_ym.h:19
f32 mFlyAttackSpeed
Definition d_a_e_ym.h:23
f32 mFlyMoveSpeed
Definition d_a_e_ym.h:22
Twilight Insect.
Definition d_a_e_ym.h:36
s16 field_0x6e6
Definition d_a_e_ym.h:184
void action()
Definition d_a_e_ym.cpp:1615
void checkSurpriseNear()
Definition d_a_e_ym.cpp:949
void setGoHomeType()
Definition d_a_e_ym.cpp:1245
dBgS_AcchCir field_0x720
Definition d_a_e_ym.h:210
int field_0x714
Definition d_a_e_ym.h:205
f32 mDistToPlayer
Definition d_a_e_ym.h:180
u8 mFlyType
Definition d_a_e_ym.h:173
void executeDown()
Definition d_a_e_ym.cpp:1135
void executeSwitch()
Definition d_a_e_ym.cpp:1509
u8 mType
Definition d_a_e_ym.h:153
int create()
Definition d_a_e_ym.cpp:1855
void setDigEffect()
Definition d_a_e_ym.cpp:793
void setFriendFlag(u8 i_flag)
Definition d_a_e_ym.h:132
u32 field_0xad8
Definition d_a_e_ym.h:217
mDoExt_McaMorfSO * field_0x5b4
Definition d_a_e_ym.h:138
u8 field_0xaf4
Definition d_a_e_ym.h:222
void checkBeforeGround()
Definition d_a_e_ym.cpp:1792
u8 field_0x6a5
Definition d_a_e_ym.h:158
void checkFrinedSamePos()
Definition d_a_e_ym.cpp:1607
void executeBack()
Definition d_a_e_ym.cpp:1277
void executeAttack()
Definition d_a_e_ym.cpp:1337
dCcD_Stts field_0x938
Definition d_a_e_ym.h:212
fopAc_ac_c * field_0x664
Definition d_a_e_ym.h:142
mDoExt_brkAnm * field_0x5b8
Definition d_a_e_ym.h:139
s16 field_0x6e4
Definition d_a_e_ym.h:183
void checkRailSurprise()
Definition d_a_e_ym.cpp:922
u8 field_0x6a8
Definition d_a_e_ym.h:161
u32 field_0xae4
Definition d_a_e_ym.h:220
void executeDefense()
Definition d_a_e_ym.cpp:1357
f32 field_0x6dc
Definition d_a_e_ym.h:181
dBgS_ObjAcch field_0x760
Definition d_a_e_ym.h:211
int mMode
Definition d_a_e_ym.h:151
u32 field_0xae0
Definition d_a_e_ym.h:219
u8 field_0x660[0x664 - 0x660]
Definition d_a_e_ym.h:141
void checkAttackEnd()
Definition d_a_e_ym.cpp:1342
void mtx_set()
Definition d_a_e_ym.cpp:1620
int draw()
Definition d_a_e_ym.cpp:674
void setTagPosP()
Definition d_a_e_ym.h:64
s16 field_0x6f8
Definition d_a_e_ym.h:192
s16 field_0x6fa
Definition d_a_e_ym.h:193
u8 getTagNo()
Definition d_a_e_ym.h:60
s8 field_0x6b4
Definition d_a_e_ym.h:167
void executeRiver()
Definition d_a_e_ym.cpp:1580
void setInclination()
Definition d_a_e_ym.cpp:1403
s16 field_0x700
Definition d_a_e_ym.h:196
void damage_check()
Definition d_a_e_ym.cpp:1146
int _delete()
Definition d_a_e_ym.cpp:1726
void setTagPos(cXyz &i_position)
Definition d_a_e_ym.h:62
u8 field_0x66E[0x670 - 0x66E]
Definition d_a_e_ym.h:144
u32 field_0xad0
Definition d_a_e_ym.h:215
s16 mAngleToPlayer
Definition d_a_e_ym.h:186
void executeFly()
Definition d_a_e_ym.cpp:1398
void initFly()
Definition d_a_e_ym.cpp:1367
u8 field_0x71c
Definition d_a_e_ym.h:207
void setMoveSound(int)
Definition d_a_e_ym.cpp:990
f32 field_0x6ec
Definition d_a_e_ym.h:187
u32 field_0xae8[3]
Definition d_a_e_ym.h:221
s16 field_0x70a
Definition d_a_e_ym.h:200
void setAppear()
Definition d_a_e_ym.cpp:960
void checkBeforeBg(s16)
Definition d_a_e_ym.cpp:1787
dCcU_AtInfo mAtInfo
Definition d_a_e_ym.h:214
int execute()
Definition d_a_e_ym.cpp:1651
u8 mTagNo
Definition d_a_e_ym.h:171
u8 field_0x6B5[0x6B8 - 0x6B5]
Definition d_a_e_ym.h:168
cXyz * mTagPosP
Definition d_a_e_ym.h:170
void checkElectricStart()
Definition d_a_e_ym.cpp:1442
u8 field_0x6CD[0x6CF - 0x6CD]
Definition d_a_e_ym.h:176
u8 field_0x6a3
Definition d_a_e_ym.h:156
u8 mSwitchBit
Definition d_a_e_ym.h:155
u8 mFriendFlag
Definition d_a_e_ym.h:163
void setLockByCargo()
Definition d_a_e_ym.cpp:1560
void setHideType()
Definition d_a_e_ym.cpp:1815
int field_0x704
Definition d_a_e_ym.h:198
u8 getSwitchBit()
Definition d_a_e_ym.h:134
u32 field_0xadc
Definition d_a_e_ym.h:218
void checkRailDig()
Definition d_a_e_ym.cpp:1427
u32 field_0x69c
Definition d_a_e_ym.h:152
void bckSetFly(int, u8, f32, f32)
Definition d_a_e_ym.cpp:651
void setFireEffect()
Definition d_a_e_ym.cpp:857
u8 mIsHide
Definition d_a_e_ym.h:157
u8 field_0x6a9
Definition d_a_e_ym.h:162
s16 field_0x70c
Definition d_a_e_ym.h:201
void cc_set()
Definition d_a_e_ym.cpp:1646
void executeElectric()
Definition d_a_e_ym.cpp:1504
s16 field_0x6f6
Definition d_a_e_ym.h:191
u8 field_0x6cb
Definition d_a_e_ym.h:174
void setElecEffect2()
Definition d_a_e_ym.cpp:838
void setRiverAttention()
Definition d_a_e_ym.cpp:1555
s16 field_0x6f4
Definition d_a_e_ym.h:190
s16 field_0x708
Definition d_a_e_ym.h:199
int CreateHeap()
Definition d_a_e_ym.cpp:1750
s16 field_0x6fe
Definition d_a_e_ym.h:195
int mLastAction
Definition d_a_e_ym.h:150
void executeWind()
Definition d_a_e_ym.cpp:1210
Z2CreatureEnemy field_0x5bc
Definition d_a_e_ym.h:140
void initFireFly(int)
Definition d_a_e_ym.cpp:1522
BOOL checkBck(char const *, int)
Definition d_a_e_ym.cpp:603
u8 field_0x6c9
Definition d_a_e_ym.h:172
void bckSet(int, u8, f32, f32)
Definition d_a_e_ym.cpp:620
cXyz * field_0x6d0
Definition d_a_e_ym.h:178
void setAttackMotion()
Definition d_a_e_ym.cpp:1347
void executeFire()
Definition d_a_e_ym.cpp:1542
void executeBackRail()
Definition d_a_e_ym.cpp:1437
void executeRail()
Definition d_a_e_ym.cpp:1432
u8 field_0x712[0x714 - 0x712]
Definition d_a_e_ym.h:204
void setElecEffect1()
Definition d_a_e_ym.cpp:819
u8 field_0x71E[0x720 - 0x71E]
Definition d_a_e_ym.h:209
void checkFlyTerritory()
Definition d_a_e_ym.cpp:1362
f32 field_0x6e0
Definition d_a_e_ym.h:182
void executeWait()
Definition d_a_e_ym.cpp:1018
f32 field_0x688
Definition d_a_e_ym.h:147
request_of_phase_process_class mPhase
Definition d_a_e_ym.h:137
void executeMove()
Definition d_a_e_ym.cpp:1045
s16 field_0x6f2
Definition d_a_e_ym.h:189
void checkInitialWall()
Definition d_a_e_ym.cpp:1797
void setActionMode(int)
Definition d_a_e_ym.cpp:1000
void executeFlyAttack()
Definition d_a_e_ym.cpp:1417
int mAction
Definition d_a_e_ym.h:149
s16 field_0x70e
Definition d_a_e_ym.h:202
daE_YM_Action
Definition d_a_e_ym.h:38
@ ACT_MOVE
Definition d_a_e_ym.h:40
@ ACT_RIVER
Definition d_a_e_ym.h:57
@ ACT_ATTACK
Definition d_a_e_ym.h:47
@ ACT_ELECTRIC
Definition d_a_e_ym.h:54
@ ACT_FLY_ATTACK
Definition d_a_e_ym.h:51
@ ACT_FIRE
Definition d_a_e_ym.h:56
@ ACT_WIND
Definition d_a_e_ym.h:43
@ ACT_DOWN
Definition d_a_e_ym.h:42
@ ACT_ESCAPE
Definition d_a_e_ym.h:41
@ ACT_FLY
Definition d_a_e_ym.h:50
@ ACT_FALL
Definition d_a_e_ym.h:46
@ ACT_BACK
Definition d_a_e_ym.h:45
@ ACT_SWITCH
Definition d_a_e_ym.h:55
@ ACT_WAIT
Definition d_a_e_ym.h:39
@ ACT_RAIL
Definition d_a_e_ym.h:52
@ ACT_SURPRISE
Definition d_a_e_ym.h:44
@ ACT_BACK_RAIL
Definition d_a_e_ym.h:53
@ ACT_ATTACK_WALL
Definition d_a_e_ym.h:48
@ ACT_DEFENSE
Definition d_a_e_ym.h:49
dPath * field_0x6b0
Definition d_a_e_ym.h:166
s16 field_0x6e8
Definition d_a_e_ym.h:185
void setNormalCc()
Definition d_a_e_ym.cpp:954
void setNextPathPoint()
Definition d_a_e_ym.cpp:1422
cXyz mTagPos
Definition d_a_e_ym.h:169
u32 field_0xad4
Definition d_a_e_ym.h:216
u8 field_0x6a7
Definition d_a_e_ym.h:160
void setTurnSound()
Definition d_a_e_ym.cpp:995
void executeSurprise()
Definition d_a_e_ym.cpp:1272
u8 field_0x71d
Definition d_a_e_ym.h:208
f32 field_0x6d4
Definition d_a_e_ym.h:179
csXyz field_0x668
Definition d_a_e_ym.h:143
s16 field_0x6f0
Definition d_a_e_ym.h:188
u8 field_0x6a6
Definition d_a_e_ym.h:159
u8 field_0x702[0x704 - 0x702]
Definition d_a_e_ym.h:197
cXyz field_0x670
Definition d_a_e_ym.h:145
u8 field_0x6cf
Definition d_a_e_ym.h:177
void executeFall()
Definition d_a_e_ym.cpp:1282
dCcD_Sph mSphCc
Definition d_a_e_ym.h:213
bool checkWallCrash()
Definition d_a_e_ym.cpp:870
void checkSurpriseLock()
Definition d_a_e_ym.cpp:912
s16 field_0x710
Definition d_a_e_ym.h:203
void executeAttackWall()
Definition d_a_e_ym.cpp:1352
void getSurpriseType()
Definition d_a_e_ym.cpp:1215
void executeEscape()
Definition d_a_e_ym.cpp:1088
u8 getFriendFlag()
Definition d_a_e_ym.h:133
void setSurpriseAway()
Definition d_a_e_ym.cpp:1225
f32 field_0x68c
Definition d_a_e_ym.h:148
void checkWolfBark()
Definition d_a_e_ym.cpp:899
void checkWall()
Definition d_a_e_ym.cpp:1810
s16 field_0x6fc
Definition d_a_e_ym.h:194
cXyz field_0x67c
Definition d_a_e_ym.h:146
u8 field_0x6a1
Definition d_a_e_ym.h:154
u8 field_0x6cc
Definition d_a_e_ym.h:175
int field_0x718
Definition d_a_e_ym.h:206
dPath * mpPath
Definition d_a_e_ym.h:165
u8 field_0x6AB[0x6AC - 0x6AB]
Definition d_a_e_ym.h:164
Definition f_op_actor.h:249
STATIC_ASSERT(sizeof(daE_YM_c)==0xAF8)
Definition d_a_e_ym.h:227
static dCcD_SrcSph cc_sph_src
Definition d_a_e_ym.h:418
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_cc_d.h:92
Definition d_a_npc_fguard.cpp:70
Definition d_a_ep.cpp:99
Definition d_a_npc_cd2.cpp:35
Definition d_a_ep.cpp:19
Definition d_a_npc_fguard.cpp:23
Definition d_a_obj_sekizoa.cpp:56
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
signed short s16
Definition types.h:5
unsigned char u8
Definition types.h:8