Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_spinner.h
Go to the documentation of this file.
1#ifndef D_A_SPINNER_H
2#define D_A_SPINNER_H
3
4#include "d/d_path.h"
7
16class daSpinner_c : public fopAc_ac_c {
17public:
18 /* 804D198C */ int createHeap();
19 /* 804D1A70 */ int create();
20 /* 804D1FD0 */ ~daSpinner_c();
21 /* 804D21E0 */ void setRoomInfo();
22 /* 804D2278 */ void setMatrix();
23 /* 804D2320 */ void setEffect();
24 /* 804D25F4 */ int posMove();
25 /* 804D3090 */ void setReflectAngle();
26 /* 804D3174 */ void setWallHit(s16, u32);
27 /* 804D34B0 */ void setAnm();
28 /* 804D3618 */ int setNextPathNum();
29 /* 804D3694 */ Vec* getPathNextPos();
30 /* 804D36F4 */ int checkLineWallHit(cXyz*, cXyz*);
31 /* 804D3774 */ int checkPathMove();
32 /* 804D3D60 */ void setSpreadEffect();
33 /* 804D3F14 */ void clearSpreadEffect();
34 /* 804D3F8C */ int execute();
35 /* 804D4BB4 */ int draw();
36
38
40
41 static u32 getWaitArg() { return 0; }
42
43 int getDeleteFlg() const { return mDeleteFlg; }
44
45 bool checkSpinnerTagEnd() const { return mSpinnerTag == 5; }
46 bool checkSpinnerTagIntoIncRot() const { return mSpinnerTag == 4; }
47 bool checkSpinnerTagInto() const { return mSpinnerTag == 3; }
48 bool checkGroundHit() { return mAcch.ChkGroundHit(); }
49
50 u8 getButtonJump() const { return mButtonJump; }
51 u8 getJumpFlg() const { return mJumpFlg; }
52
59
61
62 void setSpinnerTag(const cXyz& param_0) {
63 if (!mSpinnerTag) {
64 mSpinnerTag = 1;
65 }
66
69 }
70
72 if (mSpinnerTag != 0) {
73 mSpinnerTag = 5;
74 }
75 }
76
78 bool accept = false;
79 if (!mBck.isStop() && mSpinnerTag == 0) {
80 accept = true;
81 }
82
83 return accept;
84 }
85
87
89
90 void forceDelete() { mDeleteFlg = 1; }
91
92private:
93 /* 0x568 */ J3DModel* mpModel;
94 /* 0x56C */ mDoExt_bckAnm mBck;
96 /* 0x58C */ dBgS_AcchCir mAcchCir[3];
97 /* 0x64C */ dBgS_Acch mAcch;
99 /* 0x894 */ dPaPo_c field_0x894;
101 /* 0x8EC */ dCcD_Stts mStts;
102 /* 0x928 */ dCcD_Cyl mCyl;
103 /* 0xA64 */ dPath* mpPathMove;
104 /* 0xA68 */ dPath* field_0xa68;
105 /* 0xA6C */ u8 field_0xa6c;
106 /* 0xA6D */ u8 mJumpFlg;
107 /* 0xA6E */ s8 field_0xa6e;
108 /* 0xA6F */ u8 mSpinnerTag;
109 /* 0xA70 */ u8 mButtonJump;
110 /* 0xA71 */ u8 mDeleteFlg;
111 /* 0xA72 */ u8 field_0xa72;
112 /* 0xA73 */ s8 field_0xa73;
113 /* 0xA74 */ u8 field_0xa74;
114 /* 0xA75 */ u8 field_0xa75;
115 /* 0xA76 */ u8 field_0xa76;
116 /* 0xA77 */ u8 mPathForceRemove;
117 /* 0xA78 */ u8 field_0xa78;
118 /* 0xA79 */ u8 field_0xa79;
119 /* 0xA7A */ s16 field_0xa7a;
120 /* 0xA7C */ s16 field_0xa7c;
121 /* 0xA7E */ s16 field_0xa7e;
122 /* 0xA80 */ s16 field_0xa80;
123 /* 0xA82 */ s16 field_0xa82;
124 /* 0xA84 */ f32 field_0xa84;
125 /* 0xA88 */ f32 field_0xa88;
126 /* 0xA8C */ u32 field_0xa8c[2];
127 /* 0xA94 */ u32 field_0xa94;
128 /* 0xA98 */ cXyz field_0xa98;
129 /* 0xAA4 */ cXyz field_0xaa4;
130 /* 0xAB0 */ cXyz field_0xab0;
131};
132
133#endif /* D_A_SPINNER_H */
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition Z2SoundObject.h:34
void OnAtSetBit()
Definition c_cc_d.h:501
Definition d_bg_s_lin_chk.h:20
Definition d_particle_copoly.h:10
Spinner.
Definition d_a_spinner.h:16
u8 mSpinnerTag
Definition d_a_spinner.h:108
u8 field_0xa78
Definition d_a_spinner.h:117
dBgS_LinkLinChk mLinChk
Definition d_a_spinner.h:98
s16 field_0xa7a
Definition d_a_spinner.h:119
u8 field_0xa6c
Definition d_a_spinner.h:105
u8 mPathForceRemove
Definition d_a_spinner.h:116
cXyz field_0xab0
Definition d_a_spinner.h:130
s8 field_0xa6e
Definition d_a_spinner.h:107
dCcD_Cyl mCyl
Definition d_a_spinner.h:102
s16 field_0xa80
Definition d_a_spinner.h:122
void setRoomInfo()
Definition d_a_spinner.cpp:461
f32 field_0xa84
Definition d_a_spinner.h:124
void setAnm()
Definition d_a_spinner.cpp:760
MtxP getModelMtx()
Definition d_a_spinner.h:86
bool checkSpinnerTagEnd() const
Definition d_a_spinner.h:45
void setSpinnerTag(const cXyz &param_0)
Definition d_a_spinner.h:62
u32 field_0xa8c[2]
Definition d_a_spinner.h:126
void clearSpreadEffect()
Definition d_a_spinner.cpp:908
J3DModel * mpModel
Definition d_a_spinner.h:93
u8 field_0xa79
Definition d_a_spinner.h:118
Vec * getPathNextPos()
Definition d_a_spinner.cpp:798
bool reflectAccept()
Definition d_a_spinner.h:77
void onPathForceRemove()
Definition d_a_spinner.h:37
u8 field_0xa74
Definition d_a_spinner.h:113
s16 field_0xa7e
Definition d_a_spinner.h:121
int create()
Definition d_a_spinner.cpp:397
int getDeleteFlg() const
Definition d_a_spinner.h:43
void setWallHit(s16, u32)
Definition d_a_spinner.cpp:741
s16 field_0xa7c
Definition d_a_spinner.h:120
int posMove()
Definition d_a_spinner.cpp:699
u8 getJumpFlg() const
Definition d_a_spinner.h:51
cXyz field_0xaa4
Definition d_a_spinner.h:129
void forceDelete()
Definition d_a_spinner.h:90
u8 getButtonJump() const
Definition d_a_spinner.h:50
void setMove(f32 i_speed, s16 param_1)
Definition d_a_spinner.h:53
s16 getAngleY()
Definition d_a_spinner.h:88
u32 field_0xa94
Definition d_a_spinner.h:127
int checkLineWallHit(cXyz *, cXyz *)
Definition d_a_spinner.cpp:811
int createHeap()
Definition d_a_spinner.cpp:200
dBgS_AcchCir mAcchCir[3]
Definition d_a_spinner.h:96
u8 field_0xa75
Definition d_a_spinner.h:114
void clearPathMove()
Definition d_a_spinner.h:60
bool checkGroundHit()
Definition d_a_spinner.h:48
void setEffect()
Definition d_a_spinner.cpp:620
int draw()
Definition d_a_spinner.cpp:1015
static u32 getWaitArg()
Definition d_a_spinner.h:41
cXyz field_0xa98
Definition d_a_spinner.h:128
u8 field_0xa72
Definition d_a_spinner.h:111
int setNextPathNum()
Definition d_a_spinner.cpp:785
J3DAnmTransform * field_0x588
Definition d_a_spinner.h:95
dPath * mpPathMove
Definition d_a_spinner.h:103
int checkPathMove()
Definition d_a_spinner.cpp:880
dCcD_Stts mStts
Definition d_a_spinner.h:101
u8 mJumpFlg
Definition d_a_spinner.h:106
u8 mDeleteFlg
Definition d_a_spinner.h:110
u8 field_0xa76
Definition d_a_spinner.h:115
void setMatrix()
Definition d_a_spinner.cpp:477
Z2SoundObjSimple field_0x8cc
Definition d_a_spinner.h:100
dPath * field_0xa68
Definition d_a_spinner.h:104
void setReflectAngle()
Definition d_a_spinner.cpp:710
bool checkSpinnerTagInto() const
Definition d_a_spinner.h:47
f32 field_0xa88
Definition d_a_spinner.h:125
bool checkSpinnerTagIntoIncRot() const
Definition d_a_spinner.h:46
~daSpinner_c()
Definition d_a_spinner.cpp:449
s8 field_0xa73
Definition d_a_spinner.h:112
void offSpinnerTag()
Definition d_a_spinner.h:71
mDoExt_bckAnm mBck
Definition d_a_spinner.h:94
s16 field_0xa82
Definition d_a_spinner.h:123
int execute()
Definition d_a_spinner.cpp:989
u8 mButtonJump
Definition d_a_spinner.h:109
void setSpreadEffect()
Definition d_a_spinner.cpp:902
dPaPo_c field_0x894
Definition d_a_spinner.h:99
dPath * checkPathMoveNow()
Definition d_a_spinner.h:39
dBgS_Acch mAcch
Definition d_a_spinner.h:97
void fopAcM_SetParam(void *p_actor, u32 param)
Definition f_op_actor_mng.h:232
f32(* MtxP)[4]
Definition mtx.h:18
Definition d_a_hozelda.cpp:54
Definition d_a_ep.cpp:155
Mtx & getBaseTRMtx()
Definition J3DModel.h:85
s16 y
Definition vec.h:19
Definition d_a_hozelda.cpp:18
Definition d_a_hozelda.cpp:20
Definition d_a_npc_fguard.cpp:98
Definition d_a_npc_fguard.cpp:115
bool ChkGroundHit() const
Definition d_a_npc_fguard.cpp:86
Definition d_a_npc_fguard.cpp:70
Definition d_a_npc_cd2.cpp:35
Definition d_a_ep.cpp:19
csXyz shape_angle
Definition f_op_actor.h:216
f32 speedF
Definition f_op_actor.h:227
bool isStop()
Definition m_Do_ext.h:35
Definition d_a_hozelda.cpp:56
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