Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_gwolf.h
Go to the documentation of this file.
1#ifndef D_A_NPC_GWOLF_H
2#define D_A_NPC_GWOLF_H
3
4#include "d/actor/d_a_npc4.h"
5
8 /* 0x6C */ f32 attack_spd_horizontal; // 攻撃速度横 - Attack Speed Horizontal
9 /* 0x70 */ f32 attack_spd_vertical; // 攻撃速度縦 - Attack Speed Vertical
10 /* 0x74 */ f32 attack_spd_horizontal_horse; // 攻撃速度横(馬) - Attack Speed Horizontal (Horse)
11 /* 0x78 */ f32 attack_spd_vertical_horse; // 攻撃速度縦(馬) - Attack Speed Vertical (Horse)
12 /* 0x7C */ f32 demo_start_dist; // デモ開始距離 - Demo Start Distance
13 /* 0x80 */ f32 blur_scale; // ブラーのスケール - Blur Scale
14 /* 0x84 */ f32 blur_opacity; // ブラーの透明度 - Blur Opacity
15 /* 0x88 */ f32 warp_start_dist; // ワープ開始距離 - Warp Start Distance
16};
17
19public:
21
22 static daNpc_GWolf_HIOParam const m;
23};
24
25#if DEBUG
27public:
29
31
33
35};
36
37#define NPC_GWOLF_HIO_CLASS daNpc_GWolf_HIO_c
38#else
39#define NPC_GWOLF_HIO_CLASS daNpc_GWolf_Param_c
40#endif
41
50class daNpc_GWolf_c : public daNpcF_c {
51public:
52 typedef BOOL (daNpc_GWolf_c::*actionFunc)(void*);
53 typedef BOOL (daNpc_GWolf_c::*cutFunc)(int);
54
57 int CreateHeap();
58 int Delete();
59 int Execute();
60 int Draw();
61 int draw(int, int, f32, GXColorS10*, int);
63 static int createHeapCallBack(fopAc_ac_c*);
64 static int ctrlJointCallBack(J3DJoint*, int);
66 int getModeFromParam();
67 BOOL isDelete();
68 void reset();
69 void playMotion();
73 void doNormalAction(int);
74 BOOL doEvent();
75 void setLookMode(int);
76 void lookat();
80 void meetGWolfSkip();
82 BOOL wait(void*);
83 BOOL waitHowling(void*);
84 BOOL waitBrave(void*);
85 BOOL talk(void*);
86 BOOL test(void*);
88
89 virtual ~daNpc_GWolf_c();
90 virtual void setParam();
91 virtual BOOL main();
92 virtual BOOL ctrlBtk();
93 virtual void adjustShapeAngle();
94 virtual void setAttnPos();
95 virtual bool setExpressionAnm(int, bool);
96 virtual void setExpression(int, f32);
97 virtual void setMotionAnm(int, f32);
98 virtual void setMotion(int, f32, int);
99 virtual BOOL drawDbgInfo();
100 virtual void drawOtherMdls();
101
102 int getSwBitFromParam() { return (fopAcM_GetParam(this) & 0xFF0000) >> 16; }
103 u16 getSaveTableFromParam() { return home.angle.z & 0xFF; }
106
107 static char* mEvtCutNameList[5];
108 static cutFunc mEvtCutList[5];
109
110private:
111 /* 0xB48 */ Z2Creature mSound;
115 /* 0xC88 */ NPC_GWOLF_HIO_CLASS* mpHIO;
116 /* 0xC8C */ dCcD_Cyl mCyl;
118 /* 0xDD4 */ actionFunc mAction;
120 /* 0xDF8 */ int field_0xdf8;
121 /* 0xDFC */ int field_0xdfc;
122 /* 0xE00 */ int field_0xe00;
123 /* 0xE04 */ int field_0xe04;
124 /* 0xE08 */ int field_0xe08;
125 /* 0xE0C */ s16 mLookMode;
126 /* 0xE0E */ u16 mMode;
127 /* 0xE10 */ u8 mType;
128 /* 0xE11 */ s8 mParamMode;
129 /* 0xE14 */ int mExitId;
130 /* 0xE18 */ int mAnm;
131 /* 0xE1C */ u8 field_0xe1c;
132 /* 0xE1D */ u8 field_0xe1d;
133 /* 0xE1E */ u8 swBit;
134 /* 0xE1F */ u8 mSaveTable;
135};
136
137STATIC_ASSERT(sizeof(daNpc_GWolf_c) == 0xe20);
138
139#endif /* D_A_NPC_GWOLF_H */
int cPhs_Step
Definition c_phase.h:8
Definition J3DJoint.h:66
Definition J3DModel.h:43
Definition JORMContext.h:128
Definition Z2Creature.h:7
Definition d_bg_s_acch.h:249
Definition d_cc_d.h:472
Definition d_a_npc4.h:14
Definition d_a_npc4.h:140
Definition d_a_npc4.h:121
Definition d_a_npc4.h:170
Definition d_a_npc_gwolf.h:26
void genMessage(JORMContext *)
Definition d_a_npc_gwolf.cpp:263
daNpc_GWolf_HIOParam m
Definition d_a_npc_gwolf.h:34
void listenPropertyEvent(const JORPropertyEvent *)
Definition d_a_npc_gwolf.cpp:259
daNpc_GWolf_HIO_c()
Definition d_a_npc_gwolf.cpp:255
Definition d_a_npc_gwolf.h:18
static daNpc_GWolf_HIOParam const m
Definition d_a_npc_gwolf.h:210
virtual ~daNpc_GWolf_Param_c()
Definition d_a_npc_gwolf.h:20
Golden Wolf.
Definition d_a_npc_gwolf.h:50
s16 mLookMode
Definition d_a_npc_gwolf.h:125
u8 getTypeFromParam()
Definition d_a_npc_gwolf.cpp:829
int field_0xe08
Definition d_a_npc_gwolf.h:124
BOOL ECut_meetGWolf(int)
Definition d_a_npc_gwolf.cpp:1650
Z2Creature mSound
Definition d_a_npc_gwolf.h:111
void reset()
Definition d_a_npc_gwolf.cpp:908
virtual void setMotionAnm(int, f32)
Definition d_a_npc_gwolf.cpp:735
BOOL isDelete()
Definition d_a_npc_gwolf.cpp:875
cPhs_Step create()
Definition d_a_npc_gwolf.cpp:286
void meetGWolfSkip()
Definition d_a_npc_gwolf.cpp:1643
request_of_phase_process_class mPhases[3]
Definition d_a_npc_gwolf.h:119
int mAnm
Definition d_a_npc_gwolf.h:130
BOOL talk(void *)
Definition d_a_npc_gwolf.cpp:1810
int field_0xdfc
Definition d_a_npc_gwolf.h:121
s8 mParamMode
Definition d_a_npc_gwolf.h:128
u8 swBit
Definition d_a_npc_gwolf.h:133
BOOL ECut_attackWarpHorse(int)
Definition d_a_npc_gwolf.cpp:1371
daNpcF_Lookat_c mLookat
Definition d_a_npc_gwolf.h:113
virtual BOOL ctrlBtk()
Definition d_a_npc_gwolf.cpp:617
BOOL ECut_howlingSessionA(int)
Definition d_a_npc_gwolf.cpp:1501
BOOL doEvent()
Definition d_a_npc_gwolf.cpp:1082
u16 getSaveTableFromParam()
Definition d_a_npc_gwolf.h:103
virtual void setExpression(int, f32)
Definition d_a_npc_gwolf.cpp:731
u16 mMode
Definition d_a_npc_gwolf.h:126
int Draw()
Definition d_a_npc_gwolf.cpp:402
int field_0xdf8
Definition d_a_npc_gwolf.h:120
int field_0xe04
Definition d_a_npc_gwolf.h:123
int draw(int, int, f32, GXColorS10 *, int)
Definition d_a_npc_gwolf.cpp:411
int ctrlJoint(J3DJoint *, J3DModel *)
Definition d_a_npc_gwolf.cpp:484
virtual BOOL main()
Definition d_a_npc_gwolf.cpp:577
daNpcF_ActorMngr_c mActorMngrs[2]
Definition d_a_npc_gwolf.h:114
BOOL waitBrave(void *)
Definition d_a_npc_gwolf.cpp:1795
NPC_GWOLF_HIO_CLASS * mpHIO
Definition d_a_npc_gwolf.h:115
void playMotion()
Definition d_a_npc_gwolf.cpp:949
actionFunc mAction
Definition d_a_npc_gwolf.h:118
virtual void setParam()
Definition d_a_npc_gwolf.cpp:544
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_gwolf.cpp:527
BOOL setAction(actionFunc)
Definition d_a_npc_gwolf.cpp:1014
void setLookMode(int)
Definition d_a_npc_gwolf.cpp:1168
u8 mType
Definition d_a_npc_gwolf.h:127
dCcD_Cyl mCyl
Definition d_a_npc_gwolf.h:116
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_gwolf.cpp:531
virtual BOOL drawDbgInfo()
Definition d_a_npc_gwolf.cpp:821
int CreateHeap()
Definition d_a_npc_gwolf.cpp:358
void setHowlingFlag()
Definition d_a_npc_gwolf.h:105
int getSwBitFromParam()
Definition d_a_npc_gwolf.h:102
daNpc_GWolf_c()
Definition d_a_npc_gwolf.cpp:268
virtual void setMotion(int, f32, int)
Definition d_a_npc_gwolf.cpp:810
BOOL waitHowling(void *)
Definition d_a_npc_gwolf.cpp:1756
virtual ~daNpc_GWolf_c()
Definition d_a_npc_gwolf.cpp:270
virtual void setAttnPos()
Definition d_a_npc_gwolf.cpp:649
void doNormalAction(int)
Definition d_a_npc_gwolf.cpp:1055
virtual bool setExpressionAnm(int, bool)
Definition d_a_npc_gwolf.cpp:727
BOOL selectAction()
Definition d_a_npc_gwolf.cpp:1031
u8 field_0xe1c
Definition d_a_npc_gwolf.h:131
void setHowlingEndFlag()
Definition d_a_npc_gwolf.h:104
int Execute()
Definition d_a_npc_gwolf.cpp:398
BOOL test(void *)
Definition d_a_npc_gwolf.cpp:1864
BOOL(daNpc_GWolf_c::*) cutFunc(int)
Definition d_a_npc_gwolf.h:53
s16 getGroundSlope(dBgS_ObjAcch &, s16)
Definition d_a_npc_gwolf.cpp:1885
void lookat()
Definition d_a_npc_gwolf.cpp:1174
daNpcF_MatAnm_c * mpMatAnm
Definition d_a_npc_gwolf.h:112
BOOL wait(void *)
Definition d_a_npc_gwolf.cpp:1678
int getModeFromParam()
Definition d_a_npc_gwolf.cpp:844
BOOL ECut_attackWarp(int)
Definition d_a_npc_gwolf.cpp:1233
static char * mEvtCutNameList[5]
Definition d_a_npc_gwolf.h:194
u8 field_0xe1d
Definition d_a_npc_gwolf.h:132
BOOL(daNpc_GWolf_c::*) actionFunc(void *)
Definition d_a_npc_gwolf.h:52
int mExitId
Definition d_a_npc_gwolf.h:129
static cutFunc mEvtCutList[5]
Definition d_a_npc_gwolf.h:202
u8 mSaveTable
Definition d_a_npc_gwolf.h:134
BOOL chkAction(actionFunc)
Definition d_a_npc_gwolf.cpp:1010
int field_0xe00
Definition d_a_npc_gwolf.h:122
int Delete()
Definition d_a_npc_gwolf.cpp:392
virtual void adjustShapeAngle()
Definition d_a_npc_gwolf.cpp:638
virtual void drawOtherMdls()
Definition d_a_npc_gwolf.cpp:825
actionFunc mNextAction
Definition d_a_npc_gwolf.h:117
Definition f_op_actor.h:243
actor_place home
Definition f_op_actor.h:262
Definition m_Do_hostIO.h:26
STATIC_ASSERT(sizeof(daNpc_GWolf_c)==0xe20)
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:204
int BOOL
Definition types.h:33
signed char s8
Definition types.h:7
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
Definition JORReflexible.h:10
s16 z
Definition c_sxyz.h:7
Definition GXStruct.h:34
csXyz angle
Definition f_op_actor.h:219
Definition d_a_npc4.h:430
Definition d_a_npc_gwolf.h:6
f32 attack_spd_horizontal_horse
Definition d_a_npc_gwolf.h:10
f32 attack_spd_vertical_horse
Definition d_a_npc_gwolf.h:11
f32 attack_spd_vertical
Definition d_a_npc_gwolf.h:9
f32 attack_spd_horizontal
Definition d_a_npc_gwolf.h:8
daNpcF_HIOParam common
Definition d_a_npc_gwolf.h:7
f32 demo_start_dist
Definition d_a_npc_gwolf.h:12
f32 blur_opacity
Definition d_a_npc_gwolf.h:14
f32 blur_scale
Definition d_a_npc_gwolf.h:13
f32 warp_start_dist
Definition d_a_npc_gwolf.h:15
Definition c_phase.h:19