Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_tresure.h
Go to the documentation of this file.
1#ifndef D_D_TRESURE_H
2#define D_D_TRESURE_H
3
4#include <dolphin/mtx.h>
5
6class dTres_c {
7public:
8 static const int TYPE_GROUP_ENUM_NUMBER = 17;
9
10 struct data_s {
11 /* 0x00 */ u8 mNo;
12 /* 0x01 */ s8 mRoomNo;
13 /* 0x02 */ u8 mStatus;
14 /* 0x03 */ u8 mArg1;
15 /* 0x04 */ Vec mPos;
16 /* 0x10 */ u8 mSwBit;
17 /* 0x11 */ u8 mType;
18 /* 0x12 */ u8 mArg2;
19 /* 0x13 */ s8 mAngleY;
20 };
21
22 class typeGroupData_c : public data_s {
23 public:
24 data_s* getDataPointer() { return (data_s*)this; }
25 const data_s* getConstDataPointer() const { return (data_s*)this; }
26 u8 getNo() const { return mNo; }
27 void setNo(u8 no) { mNo = no; }
28 s8 getRoomNo() const { return mRoomNo; }
29 void setRoomNo(s8 roomNo) { mRoomNo = roomNo; }
30 u8 getStatus() const { return mStatus; }
32 void setArg1(u8 arg1) { mArg1 = arg1; }
33 const Vec* getPos() const { return &mPos; }
34 void setPos(const Vec& pos) { mPos = pos; }
35 u8 getSwBit() const { return mSwBit; }
36 void setSwBit(u8 swBit) { mSwBit = swBit; }
37 void setType(u8 type) { mType = type; }
38 void setArg2(u8 arg2) { mArg2 = arg2; }
39 int getAngleY() const { return mAngleY; }
40 void setAngleY(s8 angleY) { mAngleY = angleY; }
44 void setTypeGroupNo(u8 no) { mTypeGroupNo = no; }
45
47 /* 0x18 */ u8 mTypeGroupNo;
48 }; // Size: 0x1C
49
50 struct list_class {
51 /* 0x0 */ int field_0x0;
53 /* 0x8 */ u8 mNumber;
54 };
55
59 /* 0x8 */ u8 mNumber;
60 };
61
62 static int createWork();
63 static void create();
64 static void remove();
65 static void reset();
66 static void addData(dTres_c::list_class*, s8);
68 static void onStatus(u8, int, int);
69 static void offStatus(u8, int, int);
70 static bool getBossIconFloorNo(int*);
74 static void setPosition(int, u8, Vec const*, int);
77
78 static int getTypeGroupNumber(int index) {
80 }
81
82 static void setPosition(int i_tboxNo, Vec const* i_pos) {
83 setPosition(i_tboxNo, 0, i_pos, -1);
84 }
85
86 static void setLightDropPostion(int i_tboxNo, const Vec* i_pos) {
87 setPosition(i_tboxNo, 4, i_pos, -1);
88 }
89
90 static void setIconPositionOfCarryLight(int i_tboxNo, const Vec* i_pos, int param_2) {
91 setPosition(i_tboxNo, 12, i_pos, param_2);
92 }
93
94 static void setIconPositionOfCstatue(int i_tboxNo, const Vec* i_pos) {
95 setPosition(i_tboxNo, 15, i_pos, -1);
96 }
97
98 static void setCarryIron(int i_tboxNo, const Vec* i_pos) {
99 setPosition(i_tboxNo, 11, i_pos, -1);
100 }
101
102 static void offStatus(int param_0, int i_flag) {
103 offStatus(0, param_0, i_flag);
104 }
105
107 return mTypeGroupData;
108 }
109
110 static u8 const typeToTypeGroup[17][2];
113 static u16 mNum;
114
115 static void setNpcYkmPosition(int param_1, Vec* param_2) {
116 setPosition(param_1, 13, param_2, -1);
117 }
118
119 static void setNpcYkwPosition(int param_1, Vec* param_2) {
120 setPosition(param_1, 14, param_2, -1);
121 }
122
123 static void setCoachPosition(int param_1, const Vec* param_2, int param_3) {
124 setPosition(param_1, 10, param_2, param_3);
125 }
126};
127
128#endif /* D_D_TRESURE_H */
Definition d_tresure.h:22
const Vec * getPos() const
Definition d_tresure.h:33
u8 getSwBit() const
Definition d_tresure.h:35
void setPos(const Vec &pos)
Definition d_tresure.h:34
s8 getRoomNo() const
Definition d_tresure.h:28
void setAngleY(s8 angleY)
Definition d_tresure.h:40
void setNextDataPointer(typeGroupData_c *data)
Definition d_tresure.h:42
u8 getStatus() const
Definition d_tresure.h:30
data_s * getDataPointer()
Definition d_tresure.h:24
void setRoomNo(s8 roomNo)
Definition d_tresure.h:29
void setStatus(u8 status)
Definition d_tresure.h:31
void setSwBit(u8 swBit)
Definition d_tresure.h:36
typeGroupData_c * mNextData
Definition d_tresure.h:46
typeGroupData_c * getNextDataPointer() const
Definition d_tresure.h:41
u8 getTypeGroupNo()
Definition d_tresure.h:43
void setArg1(u8 arg1)
Definition d_tresure.h:32
u8 mTypeGroupNo
Definition d_tresure.h:47
const data_s * getConstDataPointer() const
Definition d_tresure.h:25
void setArg2(u8 arg2)
Definition d_tresure.h:38
void setNo(u8 no)
Definition d_tresure.h:27
u8 getNo() const
Definition d_tresure.h:26
void setType(u8 type)
Definition d_tresure.h:37
void setTypeGroupNo(u8 no)
Definition d_tresure.h:44
int getAngleY() const
Definition d_tresure.h:39
Definition d_tresure.h:6
static u16 mNum
Definition d_tresure.h:113
static void setNpcYkwPosition(int param_1, Vec *param_2)
Definition d_tresure.h:119
static u8 getTypeGroupNoToType(u8)
Definition d_tresure.cpp:238
static int createWork()
Definition d_tresure.cpp:13
static const int TYPE_GROUP_ENUM_NUMBER
Definition d_tresure.h:8
static void onStatus(u8, int, int)
Definition d_tresure.cpp:128
static void setIconPositionOfCstatue(int i_tboxNo, const Vec *i_pos)
Definition d_tresure.h:94
static void offStatus(int param_0, int i_flag)
Definition d_tresure.h:102
static void setPosition(int, u8, Vec const *, int)
Definition d_tresure.cpp:211
static bool getBossIconFloorNo(int *)
Definition d_tresure.cpp:158
static u8 const typeToTypeGroup[17][2]
Definition d_tresure.h:232
static type_group_list mTypeGroupListAll[17]
Definition d_tresure.h:111
static int getTypeGroupNumber(int index)
Definition d_tresure.h:78
static void addData(dTres_c::list_class *, s8)
Definition d_tresure.cpp:45
static void remove()
Definition d_tresure.cpp:24
static typeGroupData_c * getTypeGroupData()
Definition d_tresure.h:106
static void setPosition(int i_tboxNo, Vec const *i_pos)
Definition d_tresure.h:82
static void setIconPositionOfCarryLight(int i_tboxNo, const Vec *i_pos, int param_2)
Definition d_tresure.h:90
static void setNpcYkmPosition(int param_1, Vec *param_2)
Definition d_tresure.h:115
static void checkTreasureBox(dTres_c::data_s *)
Definition d_tresure.cpp:82
static u8 getTypeToTypeGroupNo(u8)
Definition d_tresure.cpp:243
static typeGroupData_c * getFirstData(u8)
Definition d_tresure.cpp:183
static void setCoachPosition(int param_1, const Vec *param_2, int param_3)
Definition d_tresure.h:123
static void reset()
Definition d_tresure.cpp:32
static void setCarryIron(int i_tboxNo, const Vec *i_pos)
Definition d_tresure.h:98
static void offStatus(u8, int, int)
Definition d_tresure.cpp:143
static void setLightDropPostion(int i_tboxNo, const Vec *i_pos)
Definition d_tresure.h:86
static typeGroupData_c * getNextData(dTres_c::typeGroupData_c *)
Definition d_tresure.cpp:195
static void create()
Definition d_tresure.cpp:18
static typeGroupData_c * mTypeGroupData
Definition d_tresure.h:112
static u8 index[20][3]
Definition GXDraw.c:434
static u32 status
Definition fstload.c:9
signed char s8
Definition types.h:7
unsigned short int u16
Definition types.h:10
unsigned char u8
Definition types.h:8
Definition mtx.h:13
Definition d_tresure.h:10
u8 mArg1
Definition d_tresure.h:14
s8 mAngleY
Definition d_tresure.h:19
u8 mType
Definition d_tresure.h:17
u8 mStatus
Definition d_tresure.h:13
u8 mNo
Definition d_tresure.h:11
Vec mPos
Definition d_tresure.h:15
u8 mArg2
Definition d_tresure.h:18
u8 mSwBit
Definition d_tresure.h:16
s8 mRoomNo
Definition d_tresure.h:12
Definition d_tresure.h:50
int field_0x0
Definition d_tresure.h:51
typeGroupData_c * field_0x4
Definition d_tresure.h:52
u8 mNumber
Definition d_tresure.h:53
Definition d_tresure.h:56
typeGroupData_c * field_0x0
Definition d_tresure.h:57
typeGroupData_c * field_0x4
Definition d_tresure.h:58
u8 mNumber
Definition d_tresure.h:59