Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_obj_itamato.h
Go to the documentation of this file.
1#ifndef D_A_OBJ_ITAMATO_H
2#define D_A_OBJ_ITAMATO_H
3
6#include "d/actor/d_a_arrow.h"
7#include "d/d_cc_d.h"
8
19
21private:
24 /* 0x574 */ J3DModel* mpModels[2];
25 /* 0x57C */ dBgS_ObjAcch mBgc;
26 /* 0x754 */ dCcD_Stts mStts;
28 /* 0x7D0 */ cBgS_GndChk mGndChk;
29 /* 0x80C */ dCcD_Sph mSph;
30 /* 0x944 */ cM3dGLin mLin;
31 /* 0x960 */ dBgS_LinChk mLinChk;
32 /* 0x9D0 */ csXyz field_0x9d0[3];
33 /* 0x9E4 */ int mCutType;
34 /* 0x9E8 */ int field_0x9e8;
35 /* 0x9EC */ f32 mGroundH;
36 /* 0x9F0 */ f32 field_0x9f0[3];
37 /* 0x9FC */ s16 field_0x9fc[3];
38 /* 0xA02 */ s16 field_0xa02;
39 /* 0xA04 */ u32 mShadowKey;
40 /* 0xA08 */ u32 mPrtcls[3];
41 /* 0xA14 */ u8 mType;
42 /* 0xA15 */ u8 field_0xa15;
43 /* 0xA15 */ u8 field_0xa16;
44 /* 0xA17 */ u8 field_0xa17;
45 /* 0xA18 */ u8 field_0xa18;
46 /* 0xA19 */ u8 mFake;
47
48public:
50 virtual ~daObj_ItaMato_c();
52 int CreateHeap();
53 int Delete();
54 int Execute();
55 int Draw();
56 static int createHeapCallBack(fopAc_ac_c*);
58 const char* getResName();
60 void setPrtcls();
61 void setEnvTevColor();
62 void setRoomNo();
63 void setMtx();
64
65 u8 getBitSW2() { return (fopAcM_GetParam(this) & 0xFF0000) >> 16; }
66
67 u8 getBitSW() { return (fopAcM_GetParam(this) & 0xFF00) >> 8; }
68
69 int getNo() {
70 u8 var_r31 = fopAcM_GetParam(this) & 0xFF;
71
72 int no;
73 if (var_r31 == 0xFF) {
74 no = -1;
75 } else {
76 no = var_r31;
77 }
78
79 return no;
80 }
81
82 u8 getType() { return 0; }
83
84 void setCutType(u8 i_cutType) { mCutType = i_cutType; }
85
86 int checkCrs(fopAc_ac_c* param_0, cXyz param_1, cXyz param_2, f32 param_3) {
87 daArrow_c* arrow_p = (daArrow_c*)param_0;
88 cM3dGSph sp38;
89 cXyz sp2C;
90 cXyz sp20;
91
92 JUT_ASSERT(170, NULL != arrow_p);
93
94 if (field_0xa16 != 0 || health == 0) {
95 return 0;
96 }
97
98 sp38.Set(mSph.GetShapeP()->GetC(), mSph.GetShapeP()->GetR() + (arrow_p->getArrowAtR() * 2.0f));
99 if ((param_1 - current.pos).abs() < param_3) {
100 mLin.SetStartEnd(param_1, param_2);
101 if (cM3d_Cross_LinSph(&mLin, &sp38)) {
102 return 3;
103 }
104 }
105
106 return 0;
107 }
108
110 if (field_0xa15 != 0) {
111 return 4;
112 }
113
114 return 0;
115 }
116
117 void onFake() { mFake = true; }
118};
119
121
122#endif /* D_A_OBJ_ITAMATO_H */
bool cM3d_Cross_LinSph(cM3dGLin const *line, cM3dGSph const *sph, Vec *param_2)
Definition c_m3d.cpp:1026
cPhs__Step
Definition c_phase.h:8
Definition J3DModel.h:43
Definition c_bg_s_gnd_chk.h:8
const cM3dGSph * GetShapeP() const
Definition c_cc_d.h:622
Definition c_m3d_g_lin.h:8
void SetStartEnd(const cXyz &, const cXyz &)
Definition c_m3d_g_lin.cpp:13
Definition c_m3d_g_sph.h:15
const f32 GetR(void) const
Definition c_m3d_g_sph.h:37
void Set(const cXyz &, f32)
Definition c_m3d_g_sph.cpp:13
const cXyz & GetC(void) const
Definition c_m3d_g_sph.h:34
Definition c_sxyz.h:10
Definition d_bg_s_acch.h:15
Definition d_bg_s_lin_chk.h:9
Definition d_bg_s_acch.h:247
Definition d_cc_d.h:282
Definition d_cc_d.h:473
Definition d_cc_d.h:269
Arrow.
Definition d_a_arrow.h:17
f32 getArrowAtR()
Definition d_a_arrow.h:67
Definition d_a_obj_itamato.cpp:32
Plank Target.
Definition d_a_obj_itamato.h:20
void setPrtcls()
Definition d_a_obj_itamato.cpp:444
csXyz field_0x9d0[3]
Definition d_a_obj_itamato.h:32
const char * getResName()
Definition d_a_obj_itamato.cpp:395
u8 field_0xa15
Definition d_a_obj_itamato.h:42
dBgS_AcchCir mAcchCir
Definition d_a_obj_itamato.h:27
virtual ~daObj_ItaMato_c()
Definition d_a_obj_itamato.cpp:117
s16 field_0xa02
Definition d_a_obj_itamato.h:38
int Draw()
Definition d_a_obj_itamato.cpp:351
int Delete()
Definition d_a_obj_itamato.cpp:214
f32 field_0x9f0[3]
Definition d_a_obj_itamato.h:36
cM3dGLin mLin
Definition d_a_obj_itamato.h:30
cBgS_GndChk mGndChk
Definition d_a_obj_itamato.h:28
int mCutType
Definition d_a_obj_itamato.h:33
daObj_ItaMato_HIO_c * mHIO
Definition d_a_obj_itamato.h:22
void onFake()
Definition d_a_obj_itamato.h:117
f32 mGroundH
Definition d_a_obj_itamato.h:35
u8 getBitSW2()
Definition d_a_obj_itamato.h:65
void setEnvTevColor()
Definition d_a_obj_itamato.cpp:457
request_of_phase_process_class mPhase
Definition d_a_obj_itamato.h:23
int field_0x9e8
Definition d_a_obj_itamato.h:34
int CreateHeap()
Definition d_a_obj_itamato.cpp:189
J3DModel * mpModels[2]
Definition d_a_obj_itamato.h:24
static void tgHitCallBack(fopAc_ac_c *, dCcD_GObjInf *, fopAc_ac_c *, dCcD_GObjInf *)
Definition d_a_obj_itamato.cpp:380
daObj_ItaMato_c()
Definition d_a_obj_itamato.h:49
u8 field_0xa16
Definition d_a_obj_itamato.h:43
u8 mType
Definition d_a_obj_itamato.h:41
dBgS_LinChk mLinChk
Definition d_a_obj_itamato.h:31
int Execute()
Definition d_a_obj_itamato.cpp:220
u8 field_0xa17
Definition d_a_obj_itamato.h:44
dCcD_Sph mSph
Definition d_a_obj_itamato.h:29
void setSwayParam(fopAc_ac_c *)
Definition d_a_obj_itamato.cpp:399
int checkCrs(fopAc_ac_c *param_0, cXyz param_1, cXyz param_2, f32 param_3)
Definition d_a_obj_itamato.h:86
dCcD_Stts mStts
Definition d_a_obj_itamato.h:26
BOOL checkBrk()
Definition d_a_obj_itamato.h:109
void setRoomNo()
Definition d_a_obj_itamato.cpp:462
dBgS_ObjAcch mBgc
Definition d_a_obj_itamato.h:25
s16 field_0x9fc[3]
Definition d_a_obj_itamato.h:37
cPhs__Step create()
Definition d_a_obj_itamato.cpp:129
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_obj_itamato.cpp:375
u32 mPrtcls[3]
Definition d_a_obj_itamato.h:40
u32 mShadowKey
Definition d_a_obj_itamato.h:39
u8 mFake
Definition d_a_obj_itamato.h:46
u8 field_0xa18
Definition d_a_obj_itamato.h:45
int getNo()
Definition d_a_obj_itamato.h:69
void setMtx()
Definition d_a_obj_itamato.cpp:468
u8 getType()
Definition d_a_obj_itamato.h:82
u8 getBitSW()
Definition d_a_obj_itamato.h:67
void setCutType(u8 i_cutType)
Definition d_a_obj_itamato.h:84
Definition f_op_actor.h:230
actor_place current
Definition f_op_actor.h:251
s16 health
Definition f_op_actor.h:269
STATIC_ASSERT(sizeof(daObj_ItaMato_c)==0xa20)
int BOOL
Definition types.h:33
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
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:192
cXyz pos
Definition f_op_actor.h:205
Definition c_xyz.h:7
Definition c_phase.h:17