Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_obj_stone.h
Go to the documentation of this file.
1#ifndef D_A_OBJ_STONE_H
2#define D_A_OBJ_STONE_H
3
4#include "d/d_com_inf_game.h"
5
6enum {
9};
10
19class daObjStone_c : public fopAc_ac_c {
20public:
21 u8 getType() { return fopAcM_GetParamBit(this,0,4); }
22 u8 getItemType() { return fopAcM_GetParamBit(this,4,2); }
23 u8 getItemNo() { return fopAcM_GetParamBit(this,8,8); }
24 u8 getItemBit() { return fopAcM_GetParamBit(this,16,8); }
25
26 /* 80CE93C4 */ void initBaseMtx();
27 /* 80CE9468 */ void setBaseMtx();
28 /* 80CE9540 */ int Create();
29 /* 80CE97C0 */ bool CreateHeap();
30 /* 80CE9840 */ int create();
31 /* 80CE9BA0 */ int execute();
32 /* 80CE9CF8 */ void mode_proc_call();
33 /* 80CEAF88 */ void init_modePutWait();
34 /* 80CEAFD8 */ void modePutWait();
35 /* 80CEAFE8 */ void init_modeWait();
36 /* 80CEB01C */ void modeWait();
37 /* 80CEB0B8 */ void init_modeDrop();
38 /* 80CEB0F8 */ void modeDrop();
39 /* 80CEB35C */ void init_modeCarry();
40 /* 80CEB480 */ void modeCarry();
41 /* 80CEB6E8 */ void init_modeWalk();
42 /* 80CEB720 */ void modeWalk();
43 /* 80CEBCDC */ void init_modePushWolfNonBreak();
44 /* 80CEBE24 */ void init_modeYogan();
45 /* 80CEBE84 */ void modeYogan();
46 /* 80CEBF1C */ void init_modeBreak();
47 /* 80CEC180 */ void modeBreak();
48 /* 80CEC1AC */ void CrrPos();
49 /* 80CEC264 */ void createItem();
50 /* 80CEC33C */ void calcRotBaseMtx(s16*);
51 /* 80CEC5BC */ int checkRollAngle();
52 /* 80CEC6D8 */ void set_carry_eff();
53 /* 80CEC7DC */ void effect_delete(bool);
54 /* 80CEC888 */ int draw();
55 /* 80CEC948 */ int _delete();
56
57private:
59 /* 0x0570 */ J3DModel* mpModel;
60 /* 0x0574 */ dBgS_ObjAcch mChkObj;
62 /* 0x078C */ dCcD_Stts mStatus;
63 /* 0x07C8 */ dCcD_Sph mCollider;
64 /* 0x0900 */ csXyz mShapeAngle;
65 /* 0x0906 */ u8 mStoneType; // 0: small rock, 1: big rock
66 /* 0x0907 */ u8 field_0x0907;
67 /* 0x0908 */ u8 field_0x0908;
68 /* 0x090C */ u32 mMode; // maybe a better name for this
69 /* 0x0910 */ cXyz field_0x0910;
70 /* 0x091C */ u16 field_0x091c;
71 /* 0x091E */ u8 field_0x091E[0x0920 - 0x091E];
74 /* 0x0940 */ f32 mInitialOffsetY;
75 /* 0x0944 */ f32 mLastPosY;
76 /* 0x0948 */ f32 mLastSpeedY; // maybe a better name for this
77 /* 0x094C */ u8 field_0x094c;
78 /* 0x094C */ u8 field_0x094d;
79 /* 0x094E */ bool mIsInWater;
80 /* 0x094F */ u8 field_0x094f;
81 /* 0x0950 */ u8 field_0x0950;
82 /* 0x0951 */ u8 field_0x0951[0x0960 - 0x0951];
83 /* 0x0960 */ u32 field_0x0960;
84 /* 0x0964 */ JPABaseEmitter* field_0x0964[3];
86};
87
88STATIC_ASSERT(sizeof(daObjStone_c) == 0x990);
89
90#endif /* D_A_OBJ_STONE_H */
Definition JPAEmitter.h:94
Definition Z2SoundObject.h:34
Definition d_cc_d.h:432
Small / Large Stones.
Definition d_a_obj_stone.h:19
void init_modeBreak()
Definition d_a_obj_stone.cpp:1284
void modeBreak()
Definition d_a_obj_stone.cpp:1289
void modeWalk()
Definition d_a_obj_stone.cpp:1186
u8 field_0x094c
Definition d_a_obj_stone.h:77
Quaternion field_0x0920
Definition d_a_obj_stone.h:72
void initBaseMtx()
Definition d_a_obj_stone.cpp:653
void init_modeWait()
Definition d_a_obj_stone.cpp:975
u32 mMode
Definition d_a_obj_stone.h:68
u8 field_0x094d
Definition d_a_obj_stone.h:78
void mode_proc_call()
Definition d_a_obj_stone.cpp:948
bool mIsInWater
Definition d_a_obj_stone.h:79
int checkRollAngle()
Definition d_a_obj_stone.cpp:1364
int _delete()
Definition d_a_obj_stone.cpp:1450
void modeCarry()
Definition d_a_obj_stone.cpp:1082
void init_modeYogan()
Definition d_a_obj_stone.cpp:1229
u8 field_0x091E[0x0920 - 0x091E]
Definition d_a_obj_stone.h:71
JPABaseEmitter * field_0x0964[3]
Definition d_a_obj_stone.h:84
u8 field_0x0908
Definition d_a_obj_stone.h:67
cXyz field_0x0910
Definition d_a_obj_stone.h:69
csXyz mShapeAngle
Definition d_a_obj_stone.h:64
void calcRotBaseMtx(s16 *)
Definition d_a_obj_stone.cpp:1356
void init_modePutWait()
Definition d_a_obj_stone.cpp:960
u32 field_0x0960
Definition d_a_obj_stone.h:83
u8 getItemBit()
Definition d_a_obj_stone.h:24
void CrrPos()
Definition d_a_obj_stone.cpp:1295
void init_modeWalk()
Definition d_a_obj_stone.cpp:1148
u8 getType()
Definition d_a_obj_stone.h:21
dCcD_Sph mCollider
Definition d_a_obj_stone.h:63
u8 field_0x0907
Definition d_a_obj_stone.h:66
int execute()
Definition d_a_obj_stone.cpp:826
u8 field_0x094f
Definition d_a_obj_stone.h:80
Z2SoundObjSimple mSound
Definition d_a_obj_stone.h:85
dBgS_AcchCir mChkCircle
Definition d_a_obj_stone.h:61
u8 field_0x0951[0x0960 - 0x0951]
Definition d_a_obj_stone.h:82
int Create()
Definition d_a_obj_stone.cpp:687
J3DModel * mpModel
Definition d_a_obj_stone.h:59
void modePutWait()
Definition d_a_obj_stone.cpp:970
dCcD_Stts mStatus
Definition d_a_obj_stone.h:62
void createItem()
Definition d_a_obj_stone.cpp:1323
void effect_delete(bool)
Definition d_a_obj_stone.cpp:1428
u8 getItemNo()
Definition d_a_obj_stone.h:23
f32 mInitialOffsetY
Definition d_a_obj_stone.h:74
request_of_phase_process_class mPhase
Definition d_a_obj_stone.h:58
int draw()
Definition d_a_obj_stone.cpp:1433
void set_carry_eff()
Definition d_a_obj_stone.cpp:1405
bool CreateHeap()
Definition d_a_obj_stone.cpp:751
f32 mLastPosY
Definition d_a_obj_stone.h:75
void init_modePushWolfNonBreak()
Definition d_a_obj_stone.cpp:1192
void modeDrop()
Definition d_a_obj_stone.cpp:1022
int create()
Definition d_a_obj_stone.cpp:761
void modeWait()
Definition d_a_obj_stone.cpp:999
u8 field_0x0950
Definition d_a_obj_stone.h:81
Quaternion field_0x0930
Definition d_a_obj_stone.h:73
void init_modeCarry()
Definition d_a_obj_stone.cpp:1055
dBgS_ObjAcch mChkObj
Definition d_a_obj_stone.h:60
f32 mLastSpeedY
Definition d_a_obj_stone.h:76
u8 mStoneType
Definition d_a_obj_stone.h:65
u16 field_0x091c
Definition d_a_obj_stone.h:70
void init_modeDrop()
Definition d_a_obj_stone.cpp:1012
void modeYogan()
Definition d_a_obj_stone.cpp:1250
void setBaseMtx()
Definition d_a_obj_stone.cpp:663
u8 getItemType()
Definition d_a_obj_stone.h:22
@ OBJ_STONE_TYPE_BIG
Definition d_a_obj_stone.h:8
@ OBJ_STONE_TYPE_SMALL
Definition d_a_obj_stone.h:7
STATIC_ASSERT(sizeof(daObjStone_c)==0x990)
u32 fopAcM_GetParamBit(void *ac, u8 shift, u8 bit)
Definition f_op_actor_mng.h:228
Definition d_a_ep.cpp:155
Definition d_a_hozelda.cpp:16
Definition d_a_hozelda.cpp:20
Definition d_a_ep.cpp:66
Definition d_a_npc_fguard.cpp:98
Definition d_a_npc_fguard.cpp:94
Definition d_a_npc_fguard.cpp:70
Definition d_a_ep.cpp:19
Definition d_a_hozelda.cpp:14
unsigned long u32
Definition types.h:10
float f32
Definition types.h:22
signed short s16
Definition types.h:5
unsigned short u16
Definition types.h:9
unsigned char u8
Definition types.h:8