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
30 void listenPropertyEvent(const JORPropertyEvent*);
31
32 void genMessage(JORMContext*);
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);
62 int ctrlJoint(J3DJoint*, J3DModel*);
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();
72 BOOL selectAction();
73 void doNormalAction(int);
74 BOOL doEvent();
75 void setLookMode(int);
76 void lookat();
77 BOOL ECut_attackWarp(int);
78 BOOL ECut_attackWarpHorse(int);
79 BOOL ECut_howlingSessionA(int);
80 void meetGWolfSkip();
81 BOOL ECut_meetGWolf(int);
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 mFlowID;
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 Z2Creature.h:7
Definition d_bg_s_acch.h:244
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:832
BOOL ECut_meetGWolf(int)
Definition d_a_npc_gwolf.cpp:1653
Z2Creature mSound
Definition d_a_npc_gwolf.h:111
void reset()
Definition d_a_npc_gwolf.cpp:911
virtual void setMotionAnm(int, f32)
Definition d_a_npc_gwolf.cpp:738
BOOL isDelete()
Definition d_a_npc_gwolf.cpp:878
cPhs_Step create()
Definition d_a_npc_gwolf.cpp:286
void meetGWolfSkip()
Definition d_a_npc_gwolf.cpp:1646
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:1813
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:1374
daNpcF_Lookat_c mLookat
Definition d_a_npc_gwolf.h:113
virtual BOOL ctrlBtk()
Definition d_a_npc_gwolf.cpp:620
BOOL ECut_howlingSessionA(int)
Definition d_a_npc_gwolf.cpp:1504
BOOL doEvent()
Definition d_a_npc_gwolf.cpp:1085
u16 getSaveTableFromParam()
Definition d_a_npc_gwolf.h:103
virtual void setExpression(int, f32)
Definition d_a_npc_gwolf.cpp:734
u16 mMode
Definition d_a_npc_gwolf.h:126
int Draw()
Definition d_a_npc_gwolf.cpp:405
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:414
int ctrlJoint(J3DJoint *, J3DModel *)
Definition d_a_npc_gwolf.cpp:487
virtual BOOL main()
Definition d_a_npc_gwolf.cpp:580
daNpcF_ActorMngr_c mActorMngrs[2]
Definition d_a_npc_gwolf.h:114
BOOL waitBrave(void *)
Definition d_a_npc_gwolf.cpp:1798
NPC_GWOLF_HIO_CLASS * mpHIO
Definition d_a_npc_gwolf.h:115
void playMotion()
Definition d_a_npc_gwolf.cpp:952
int mFlowID
Definition d_a_npc_gwolf.h:124
actionFunc mAction
Definition d_a_npc_gwolf.h:118
virtual void setParam()
Definition d_a_npc_gwolf.cpp:547
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_gwolf.cpp:530
BOOL setAction(actionFunc)
Definition d_a_npc_gwolf.cpp:1017
void setLookMode(int)
Definition d_a_npc_gwolf.cpp:1171
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:534
virtual BOOL drawDbgInfo()
Definition d_a_npc_gwolf.cpp:824
int CreateHeap()
Definition d_a_npc_gwolf.cpp:361
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:813
BOOL waitHowling(void *)
Definition d_a_npc_gwolf.cpp:1759
virtual ~daNpc_GWolf_c()
Definition d_a_npc_gwolf.cpp:270
virtual void setAttnPos()
Definition d_a_npc_gwolf.cpp:652
void doNormalAction(int)
Definition d_a_npc_gwolf.cpp:1058
virtual bool setExpressionAnm(int, bool)
Definition d_a_npc_gwolf.cpp:730
BOOL selectAction()
Definition d_a_npc_gwolf.cpp:1034
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:401
BOOL test(void *)
Definition d_a_npc_gwolf.cpp:1867
BOOL(daNpc_GWolf_c::*) cutFunc(int)
Definition d_a_npc_gwolf.h:53
s16 getGroundSlope(dBgS_ObjAcch &, s16)
Definition d_a_npc_gwolf.cpp:1888
void lookat()
Definition d_a_npc_gwolf.cpp:1177
daNpcF_MatAnm_c * mpMatAnm
Definition d_a_npc_gwolf.h:112
BOOL wait(void *)
Definition d_a_npc_gwolf.cpp:1681
int getModeFromParam()
Definition d_a_npc_gwolf.cpp:847
BOOL ECut_attackWarp(int)
Definition d_a_npc_gwolf.cpp:1236
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:1013
int field_0xe00
Definition d_a_npc_gwolf.h:122
int Delete()
Definition d_a_npc_gwolf.cpp:395
virtual void adjustShapeAngle()
Definition d_a_npc_gwolf.cpp:641
virtual void drawOtherMdls()
Definition d_a_npc_gwolf.cpp:828
actionFunc mNextAction
Definition d_a_npc_gwolf.h:117
Definition f_op_actor.h:271
actor_place home
Definition f_op_actor.h:290
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:172
s16 z
Definition c_sxyz.h:7
csXyz angle
Definition f_op_actor.h:247
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