Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_ni.h
Go to the documentation of this file.
1#ifndef D_A_NI_H
2#define D_A_NI_H
3
5#include "d/d_cc_d.h"
6#include "d/d_cc_uty.h"
7#include "d/d_bg_s_acch.h"
8
9#define BCK_FALL 5
10#define BCK_FLY 6
11#define BCK_IKAKU 7
12#define BCK_MIWATASI 8
13#define BCK_MOGAKU 9
14#define BCK_NAKU 10
15#define BCK_WAIT1 11
16#define BCK_WALK_A 12
17#define BCK_WALK_B 13
18
26
41
50class ni_class : public fopEn_enemy_c {
51public:
52 bool checkGold() { return mColor == COLOR_GOLD; }
53
54 void setMtx(MtxP mtx) {
55 cXyz newPos;
56 field_0xb08 = 1;
59 current.pos = newPos;
61 speed.y = 0.0f;
62 speedF = 0.0f;
64 }
65
66 void changeMode() { field_0x5fe = 1; }
67
69 /* 0x5B4 */ u8 field_0x5b4;
70 /* 0x5B5 */ u8 mType;
71 /* 0x5B6 */ u8 field_0x5b6[0x5C0 - 0x5B6];
72 /* 0x5C0 */ cXyz field_0x5c0;
73 /* 0x5CC */ cXyz mDemoInitPos;
74 /* 0x5D8 */ f32 field_0x5d8;
75 /* 0x5DC */ s16 mMoveAngle;
76 /* 0x5E0 */ f32 mDistToPlayer;
77 /* 0x5E4 */ s16 mAngleToPlayer;
78 /* 0x5E8 */ mDoExt_McaMorf* mpMorf;
79 /* 0x5EC */ mDoExt_btkAnm* mpBtk;
80 /* 0x5F0 */ s8 mColor;
81 /* 0x5F4 */ int mAnmID;
82 /* 0x5F8 */ s16 mCounter;
83 /* 0x5FA */ s16 mAction;
84 /* 0x5FC */ s16 mMode;
85 /* 0x5FE */ s16 field_0x5fe;
86 /* 0x600 */ u32 mShadowKey;
87 /* 0x604 */ s16 mTimers[4];
88 /* 0x60C */ s16 field_0x60c;
89 /* 0x60E */ s16 field_0x60e;
90 /* 0x610 */ f32 field_0x610;
91 /* 0x614 */ s16 field_0x614;
92 /* 0x616 */ s16 field_0x616;
93 /* 0x618 */ s16 field_0x618;
94 /* 0x61A */ s16 field_0x61a;
95 /* 0x61C */ s16 field_0x61c;
96 /* 0x61E */ s16 field_0x61e;
97 /* 0x620 */ s16 field_0x620;
98 /* 0x622 */ s16 field_0x622;
99 /* 0x624 */ s16 field_0x624;
100 /* 0x626 */ s16 field_0x626;
101 /* 0x628 */ s16 field_0x628;
102 /* 0x62A */ s16 field_0x62a;
103 /* 0x62C */ int mTargetActorID;
105 /* 0x670 */ dBgS_ObjAcch mAcch;
106 /* 0x848 */ s8 field_0x848;
107 /* 0x84C */ dCcD_Stts mCcStts;
108 /* 0x888 */ dCcD_Sph mCcSph;
109 /* 0x9C0 */ dCcU_AtInfo mAtInfo;
110 /* 0x9E4 */ s8 field_0x9e4;
111 /* 0x9E6 */ s16 field_0x9e6;
112 /* 0x9E8 */ f32 field_0x9e8;
113 /* 0x9EC */ s16 field_0x9ec;
114 /* 0x9EE */ s16 field_0x9ee[4];
115 /* 0x9F8 */ f32 mSplGroundH;
117 /* 0xA00 */ f32 field_0xa00;
118 /* 0xA04 */ s16 field_0xa04;
119 /* 0xA06 */ s8 field_0xa06;
120 /* 0xA08 */ u32 field_0xa08[4];
121 /* 0xA18 */ u32 mHamonEmtrID;
122 /* 0xA1C */ u8 field_0xA1C[0xA20 - 0xA1C];
123 /* 0xA20 */ u32 mEnoEmtrIDs[2];
125 /* 0xA48 */ s8 field_0xa48;
126 /* 0xA4C */ u32 mHaneEmitterID;
127 /* 0xA50 */ s8 field_0xa50;
128 /* 0xA52 */ s16 field_0xa52;
129 /* 0xA54 */ s16 mFlowNo;
130 /* 0xA58 */ dMsgFlow_c mMsgFlow;
131 /* 0xAA4 */ f32 mPadMainStickX;
132 /* 0xAA8 */ f32 mPadMainStickY;
133 /* 0xAAC */ f32 mPadSubStickX;
134 /* 0xAB0 */ f32 mPadSubStickY;
135 /* 0xAB4 */ f32 mPadAnalogL;
136 /* 0xAB8 */ u32 mPadHoldL;
137 /* 0xABC */ f32 field_0xabc;
138 /* 0xAC0 */ f32 mPlayAnmSpeed;
139 /* 0xAC4 */ s16 mPlayCamMode;
141 /* 0xAC8 */ cXyz field_0xac8;
142 /* 0xAD4 */ cXyz field_0xad4;
143 /* 0xAE0 */ u8 field_0xAE0[0xAEC - 0xAE0];
144 /* 0xAEC */ f32 field_0xaec;
145 /* 0xAF0 */ f32 field_0xaf0;
146 /* 0xAF4 */ s16 field_0xaf4;
147 /* 0xAF8 */ f32 field_0xaf8;
148 /* 0xAFC */ f32 field_0xafc;
149 /* 0xB00 */ f32 field_0xb00;
150 /* 0xB04 */ f32 field_0xb04;
151 /* 0xB08 */ u8 field_0xb08;
152 /* 0xB09 */ u8 mInitHIO;
153};
154
155STATIC_ASSERT(sizeof(ni_class) == 0xb0c);
156
158public:
159 daNi_HIO_c();
160 virtual ~daNi_HIO_c() {}
161
162 /* 0x04 */ s8 field_0x04;
163 /* 0x08 */ f32 mBaseSize;
164 /* 0x0C */ f32 mMoveSpeed;
165 /* 0x10 */ f32 mMotionSpeed;
166 /* 0x14 */ u8 mRecognizeLink;
168 /* 0x1C */ f32 mFleeWalkSpeed;
169 /* 0x20 */ f32 mFleeFlySpeed;
170 /* 0x24 */ f32 mFleeJumpPower;
172 /* 0x2C */ f32 mThrowSpeed;
174 /* 0x34 */ f32 field_0x34;
176 /* 0x39 */ u8 field_0x39;
177};
178
179
180#endif /* D_A_NI_H */
static Mtx mtx[10]
Definition c_lib.cpp:486
void setBaseTRMtx(Mtx m)
Definition J3DModel.h:90
Definition Z2SoundObject.h:38
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
Definition d_msg_flow.h:49
Definition d_a_ni.h:157
f32 mFleeJumpPower
Definition d_a_ni.h:170
f32 mBaseSize
Definition d_a_ni.h:163
u8 mRecognizeLink
Definition d_a_ni.h:166
f32 mRecognizeRange
Definition d_a_ni.h:167
daNi_HIO_c()
Definition d_a_ni.cpp:29
u8 mMogakuModelShake
Definition d_a_ni.h:175
f32 mThrowJumpPower
Definition d_a_ni.h:173
u8 field_0x39
Definition d_a_ni.h:176
f32 mFleeJumpGravity
Definition d_a_ni.h:171
f32 mFleeFlySpeed
Definition d_a_ni.h:169
f32 field_0x34
Definition d_a_ni.h:174
virtual ~daNi_HIO_c()
Definition d_a_ni.h:160
s8 field_0x04
Definition d_a_ni.h:162
f32 mFleeWalkSpeed
Definition d_a_ni.h:168
f32 mMoveSpeed
Definition d_a_ni.h:164
f32 mThrowSpeed
Definition d_a_ni.h:172
f32 mMotionSpeed
Definition d_a_ni.h:165
actor_place old
Definition f_op_actor.h:250
cXyz speed
Definition f_op_actor.h:254
actor_place current
Definition f_op_actor.h:251
f32 speedF
Definition f_op_actor.h:263
Definition f_op_actor.h:285
Definition m_Do_ext.h:369
J3DModel * getModel()
Definition m_Do_ext.h:385
Definition m_Do_ext.h:65
static void copy(const Mtx m)
Definition m_Do_mtx.h:346
static void multVecZero(Vec *v)
Definition m_Do_mtx.h:262
Cucco.
Definition d_a_alink.cpp:15919
s16 field_0x616
Definition d_a_ni.h:92
s16 mPlayCamModeTimer
Definition d_a_ni.h:140
s16 mMode
Definition d_a_ni.h:84
cXyz mDemoInitPos
Definition d_a_ni.h:73
Z2SoundObjSimple mSound
Definition d_a_ni.h:124
dCcU_AtInfo mAtInfo
Definition d_a_ni.h:109
f32 mPadSubStickY
Definition d_a_ni.h:134
u32 mHaneEmitterID
Definition d_a_ni.h:126
s16 field_0x61e
Definition d_a_ni.h:96
s16 field_0xa52
Definition d_a_ni.h:128
s16 field_0x614
Definition d_a_ni.h:91
f32 field_0xb00
Definition d_a_ni.h:149
s16 mCounter
Definition d_a_ni.h:82
s16 field_0x60e
Definition d_a_ni.h:89
s8 field_0xa48
Definition d_a_ni.h:125
f32 mSplGroundH
Definition d_a_ni.h:115
int mTargetActorID
Definition d_a_ni.h:103
f32 field_0x9e8
Definition d_a_ni.h:112
cXyz field_0xad4
Definition d_a_ni.h:142
f32 field_0x5d8
Definition d_a_ni.h:74
f32 field_0xabc
Definition d_a_ni.h:137
f32 mPadMainStickX
Definition d_a_ni.h:131
s16 field_0x622
Definition d_a_ni.h:98
mDoExt_McaMorf * mpMorf
Definition d_a_ni.h:78
f32 field_0x610
Definition d_a_ni.h:90
dBgS_AcchCir mAcchCir
Definition d_a_ni.h:104
u8 field_0x5b4
Definition d_a_ni.h:69
u8 field_0xA1C[0xA20 - 0xA1C]
Definition d_a_ni.h:122
void setMtx(MtxP mtx)
Definition d_a_ni.h:54
u8 field_0xb08
Definition d_a_ni.h:151
s16 field_0x9ec
Definition d_a_ni.h:113
s16 field_0xaf4
Definition d_a_ni.h:146
dCcD_Sph mCcSph
Definition d_a_ni.h:108
u8 mType
Definition d_a_ni.h:70
u32 mShadowKey
Definition d_a_ni.h:86
f32 mPadSubStickX
Definition d_a_ni.h:133
u32 field_0xa08[4]
Definition d_a_ni.h:120
bool checkGold()
Definition d_a_ni.h:52
s16 field_0x620
Definition d_a_ni.h:97
f32 field_0xaf0
Definition d_a_ni.h:145
s8 field_0x9e4
Definition d_a_ni.h:110
u32 mHamonEmtrID
Definition d_a_ni.h:121
dCcD_Stts mCcStts
Definition d_a_ni.h:107
f32 mPadAnalogL
Definition d_a_ni.h:135
f32 field_0xa00
Definition d_a_ni.h:117
cXyz field_0x5c0
Definition d_a_ni.h:72
s16 field_0x61a
Definition d_a_ni.h:94
s16 field_0xa04
Definition d_a_ni.h:118
int mAnmID
Definition d_a_ni.h:81
f32 mDistToPlayer
Definition d_a_ni.h:76
s16 field_0x618
Definition d_a_ni.h:93
u32 mPadHoldL
Definition d_a_ni.h:136
s8 field_0xa50
Definition d_a_ni.h:127
s16 mTimers[4]
Definition d_a_ni.h:87
s8 mColor
Definition d_a_ni.h:80
u8 field_0x5b6[0x5C0 - 0x5B6]
Definition d_a_ni.h:71
s16 field_0x626
Definition d_a_ni.h:100
s16 field_0x9e6
Definition d_a_ni.h:111
f32 field_0xafc
Definition d_a_ni.h:148
s16 mMoveAngle
Definition d_a_ni.h:75
cXyz field_0xac8
Definition d_a_ni.h:141
f32 field_0xaec
Definition d_a_ni.h:144
s16 field_0x628
Definition d_a_ni.h:101
f32 field_0xaf8
Definition d_a_ni.h:147
s8 field_0x848
Definition d_a_ni.h:106
s16 field_0x62a
Definition d_a_ni.h:102
s16 mFlowNo
Definition d_a_ni.h:129
s16 field_0x60c
Definition d_a_ni.h:88
s16 field_0x624
Definition d_a_ni.h:99
mDoExt_btkAnm * mpBtk
Definition d_a_ni.h:79
s16 field_0x5fe
Definition d_a_ni.h:85
void changeMode()
Definition d_a_ni.h:66
f32 mBoomerangMoveMaxStep
Definition d_a_ni.h:116
f32 field_0xb04
Definition d_a_ni.h:150
u32 mEnoEmtrIDs[2]
Definition d_a_ni.h:123
f32 mPadMainStickY
Definition d_a_ni.h:132
s16 mPlayCamMode
Definition d_a_ni.h:139
s16 field_0x9ee[4]
Definition d_a_ni.h:114
request_of_phase_process_class mPhase
Definition d_a_ni.h:68
u8 field_0xAE0[0xAEC - 0xAE0]
Definition d_a_ni.h:143
s16 field_0x61c
Definition d_a_ni.h:95
u8 mInitHIO
Definition d_a_ni.h:152
dBgS_ObjAcch mAcch
Definition d_a_ni.h:105
dMsgFlow_c mMsgFlow
Definition d_a_ni.h:130
s16 mAngleToPlayer
Definition d_a_ni.h:77
s16 mAction
Definition d_a_ni.h:83
f32 mPlayAnmSpeed
Definition d_a_ni.h:138
s8 field_0xa06
Definition d_a_ni.h:119
daNi_color
Definition d_a_ni.h:19
@ COLOR_BLACK
Definition d_a_ni.h:21
@ COLOR_RANDOM
Definition d_a_ni.h:24
@ COLOR_BROWN
Definition d_a_ni.h:22
@ COLOR_GOLD
Definition d_a_ni.h:23
@ COLOR_WHITE
Definition d_a_ni.h:20
STATIC_ASSERT(sizeof(ni_class)==0xb0c)
daNi_action
Definition d_a_ni.h:27
@ ACTION_PLAY_e
Definition d_a_ni.h:39
@ ACTION_CARRY_e
Definition d_a_ni.h:31
@ ACTION_MESSAGE_e
Definition d_a_ni.h:35
@ ACTION_AWAY_e
Definition d_a_ni.h:29
@ ACTION_WINDSPIN_e
Definition d_a_ni.h:37
@ ACTION_DEMO0_e
Definition d_a_ni.h:38
@ ACTION_RETURN_e
Definition d_a_ni.h:34
@ ACTION_NORMAL_e
Definition d_a_ni.h:28
@ ACTION_DAMAGE_e
Definition d_a_ni.h:36
@ ACTION_SWIM_e
Definition d_a_ni.h:30
@ ACTION_FLY_e
Definition d_a_ni.h:32
@ ACTION_DROP_e
Definition d_a_ni.h:33
f32(* MtxP)[4]
Definition mtx.h:38
signed char s8
Definition types.h:7
unsigned long u32
Definition types.h:12
signed short int s16
Definition types.h:9
float f32
Definition types.h:25
unsigned char u8
Definition types.h:8
f32 y
Definition mtx.h:14
cXyz pos
Definition f_op_actor.h:205
Definition c_xyz.h:7
Definition d_cc_uty.h:20
Definition c_phase.h:17