Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_obj_gadget.h
Go to the documentation of this file.
1#ifndef D_A_OBJ_GADGET_H
2#define D_A_OBJ_GADGET_H
3
5#include "d/d_bg_s_acch.h"
6#include "d/d_cc_d.h"
8
10
19class daObj_Gadget_c : public fopAc_ac_c {
20private:
23 /* 0x574 */ J3DModel* mModel;
24 /* 0x578 */ dBgS_ObjAcch mAcch;
25 /* 0x750 */ dCcD_Stts mStts;
27 /* 0x7CC */ cBgS_GndChk mGndChk;
28 /* 0x808 */ dCcD_Cyl mCyl;
29 /* 0x944 */ cM3dGLin mLine;
30 /* 0x960 */ dBgS_LinChk mLinChk;
31 /* 0x9D0 */ u8 field_0x9d0;
32 /* 0x9D4 */ cXyz field_0x9d4;
33 /* 0x9E0 */ cXyz field_0x9e0;
34 /* 0x9EC */ csXyz field_0x9ec;
35 /* 0x9F4 */ int field_0x9f4;
36 /* 0x9F8 */ int field_0x9f8;
37 /* 0x9FC */ f32 field_0x9fc;
38 /* 0xA00 */ f32 field_0xa00;
39 /* 0xA04 */ f32 field_0xa04;
40 /* 0xA08 */ f32 field_0xa08;
41 /* 0xA0C */ f32 field_0xa0c;
42 /* 0xA10 */ s16 field_0xa10;
43 /* 0xA12 */ s16 field_0xa12;
44 /* 0xA14 */ s16 field_0xa14;
45 /* 0xA16 */ s16 field_0xa16;
46 /* 0xA18 */ s16 field_0xa18;
47 /* 0xA1A */ u8 field_0xa1a[0xa20 - 0xa1a];
48 /* 0xA20 */ u32 field_0xa20[4];
49 /* 0xA30 */ u32 field_0xa30;
50 /* 0xA34 */ u32 field_0xa34;
51 /* 0xA38 */ u32 field_0xa38;
52 /* 0xA3C */ u32 field_0xa3c;
53 /* 0xA40 */ u8 field_0xa40;
54 /* 0xA41 */ u8 field_0xa41;
55 /* 0xA42 */ u8 field_0xa42;
56 /* 0xA43 */ u8 field_0xa43;
57 /* 0xA44 */ u8 mHide;
58 /* 0xA45 */ u8 field_0xa45;
59 /* 0xA46 */ u8 field_0xa46;
60 /* 0xA47 */ u8 field_0xa47;
61
62public:
63 virtual ~daObj_Gadget_c();
64 int create();
65 int CreateHeap();
66 int Delete();
67 int Execute();
68 int Draw();
69 static int createHeapCallBack(fopAc_ac_c*);
70 void setEnvTevColor();
71 void setRoomNo();
72 void reset();
73 void setMtx();
74 s16 calcRollAngle(s16, int);
76 void setSmokePrtcl();
77 void setWaterPrtcl();
78 void setHamonPrtcl();
79
80 u8 getType() { return fopAcM_GetParam(this); }
81 void setCoNone() { field_0xa40 = 1; }
82 void offHide() { mHide = 0; }
83 void onHide() { mHide = 1; }
84
85 void popup(f32 param_1, f32 param_2, cXyz* param_3) {
86 if (param_3 != NULL) {
87 current.pos = *param_3;
89 }
90
91 s16 iVar1 = cM_deg2s(param_2);
92 speed.setall(0.0f);
93 speed.y = param_1 * cM_ssin(iVar1);
94 speedF = param_1 * cM_scos(iVar1);
95 field_0xa14 = 0x4000;
96 field_0xa43 = 1;
97 }
98};
99
101
103 /* 0x00 */ f32 focus_offset;
104 /* 0x04 */ f32 gravity;
105 /* 0x08 */ f32 scale;
107 /* 0x10 */ f32 weight;
108 /* 0x14 */ f32 height;
109 /* 0x18 */ f32 knee_length;
110 /* 0x1C */ f32 width;
111 /* 0x20 */ f32 fire_rate;
112 /* 0x24 */ f32 launch_angle;
114};
115
117public:
119
120 static daObj_Gadget_HIOParam const m;
121};
122
123
124#endif /* D_A_OBJ_GADGET_H */
s16 cM_deg2s(f32 deg)
Definition c_math.h:27
f32 cM_ssin(s16 x)
Definition c_math.h:23
f32 cM_scos(s16 x)
Definition c_math.h:19
Definition J3DModel.h:43
Definition c_bg_s_gnd_chk.h:8
Definition c_m3d_g_lin.h:8
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:461
Definition d_cc_d.h:269
Definition d_a_obj_gadget.cpp:21
Definition d_a_obj_gadget.h:116
virtual ~daObj_Gadget_Param_c()
Definition d_a_obj_gadget.h:118
static daObj_Gadget_HIOParam const m
Definition d_a_obj_gadget.h:37
Gadget.
Definition d_a_obj_gadget.h:19
void onHide()
Definition d_a_obj_gadget.h:83
s16 field_0xa14
Definition d_a_obj_gadget.h:44
u8 field_0xa42
Definition d_a_obj_gadget.h:55
dBgS_AcchCir mAcchCir
Definition d_a_obj_gadget.h:26
int Delete()
Definition d_a_obj_gadget.cpp:204
u8 field_0xa45
Definition d_a_obj_gadget.h:58
void setHamonPrtcl()
Definition d_a_obj_gadget.cpp:583
void popup(f32 param_1, f32 param_2, cXyz *param_3)
Definition d_a_obj_gadget.h:85
void setEnvTevColor()
Definition d_a_obj_gadget.cpp:470
f32 field_0xa0c
Definition d_a_obj_gadget.h:41
u8 field_0xa40
Definition d_a_obj_gadget.h:53
int Execute()
Definition d_a_obj_gadget.cpp:210
s16 calcRollAngle(s16, int)
Definition d_a_obj_gadget.cpp:505
u32 field_0xa38
Definition d_a_obj_gadget.h:51
u32 field_0xa3c
Definition d_a_obj_gadget.h:52
dBgS_ObjAcch mAcch
Definition d_a_obj_gadget.h:24
csXyz field_0x9ec
Definition d_a_obj_gadget.h:34
f32 field_0x9fc
Definition d_a_obj_gadget.h:37
dCcD_Cyl mCyl
Definition d_a_obj_gadget.h:28
int field_0x9f8
Definition d_a_obj_gadget.h:36
void setRoomNo()
Definition d_a_obj_gadget.cpp:475
u8 getType()
Definition d_a_obj_gadget.h:80
int CreateHeap()
Definition d_a_obj_gadget.cpp:195
u8 field_0x9d0
Definition d_a_obj_gadget.h:31
cM3dGLin mLine
Definition d_a_obj_gadget.h:29
u8 field_0xa47
Definition d_a_obj_gadget.h:60
daObj_Gadget_HIO_c * field_0x568
Definition d_a_obj_gadget.h:21
J3DModel * mModel
Definition d_a_obj_gadget.h:23
dBgS_LinChk mLinChk
Definition d_a_obj_gadget.h:30
s16 field_0xa10
Definition d_a_obj_gadget.h:42
void setMtx()
Definition d_a_obj_gadget.cpp:491
s16 field_0xa12
Definition d_a_obj_gadget.h:43
f32 field_0xa04
Definition d_a_obj_gadget.h:39
s16 field_0xa16
Definition d_a_obj_gadget.h:45
cXyz field_0x9d4
Definition d_a_obj_gadget.h:32
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_obj_gadget.cpp:466
s16 field_0xa18
Definition d_a_obj_gadget.h:46
virtual ~daObj_Gadget_c()
Definition d_a_obj_gadget.cpp:141
u32 field_0xa20[4]
Definition d_a_obj_gadget.h:48
f32 field_0xa08
Definition d_a_obj_gadget.h:40
cBgS_GndChk mGndChk
Definition d_a_obj_gadget.h:27
request_of_phase_process_class mPhase
Definition d_a_obj_gadget.h:22
u8 field_0xa43
Definition d_a_obj_gadget.h:56
int field_0x9f4
Definition d_a_obj_gadget.h:35
dCcD_Stts mStts
Definition d_a_obj_gadget.h:25
u8 field_0xa41
Definition d_a_obj_gadget.h:54
void offHide()
Definition d_a_obj_gadget.h:82
u8 field_0xa46
Definition d_a_obj_gadget.h:59
void setSmokePrtcl()
Definition d_a_obj_gadget.cpp:559
u8 mHide
Definition d_a_obj_gadget.h:57
void setCoNone()
Definition d_a_obj_gadget.h:81
u32 field_0xa34
Definition d_a_obj_gadget.h:50
void setWaterPrtcl()
Definition d_a_obj_gadget.cpp:565
int create()
Definition d_a_obj_gadget.cpp:155
cXyz field_0x9e0
Definition d_a_obj_gadget.h:33
void reset()
Definition d_a_obj_gadget.cpp:481
f32 field_0xa00
Definition d_a_obj_gadget.h:38
u32 field_0xa30
Definition d_a_obj_gadget.h:49
u8 field_0xa1a[0xa20 - 0xa1a]
Definition d_a_obj_gadget.h:47
int Draw()
Definition d_a_obj_gadget.cpp:444
BOOL getWallAngle(s16, s16 *)
Definition d_a_obj_gadget.cpp:528
Definition f_op_actor.h:230
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
STATIC_ASSERT(sizeof(daObj_Gadget_c)==0xa4c)
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
f32 y
Definition mtx.h:14
cXyz pos
Definition f_op_actor.h:205
Definition c_xyz.h:7
void setall(f32 f)
Definition c_xyz.h:113
Definition d_a_obj_gadget.h:102
f32 knee_length
Definition d_a_obj_gadget.h:109
f32 weight
Definition d_a_obj_gadget.h:107
f32 floating_offset
Definition d_a_obj_gadget.h:113
f32 gravity
Definition d_a_obj_gadget.h:104
f32 launch_angle
Definition d_a_obj_gadget.h:112
f32 scale
Definition d_a_obj_gadget.h:105
f32 fire_rate
Definition d_a_obj_gadget.h:111
f32 width
Definition d_a_obj_gadget.h:110
f32 height
Definition d_a_obj_gadget.h:108
f32 focus_offset
Definition d_a_obj_gadget.h:103
f32 real_shadow_size
Definition d_a_obj_gadget.h:106
Definition c_phase.h:17