Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_menu_fmap_map.h
Go to the documentation of this file.
1#ifndef D_MENU_D_MENU_FMAP_MAP_H
2#define D_MENU_D_MENU_FMAP_MAP_H
3
5#include <dolphin/types.h>
6#include "d/d_menu_fmap.h"
7#include "d/d_map.h"
8#include "d/d_map_path.h"
9#include "d/d_map_path_fmap.h"
10
13 /* 0x0D8 */ GXColor field_0xd8;
14 /* 0x0DC */ GXColor field_0xdc;
15 /* 0x0E0 */ GXColor field_0xe0;
16 /* 0x0E4 */ GXColor field_0xe4;
17 /* 0x0E8 */ GXColor field_0xe8[8];
18 /* 0x108 */ GXColor field_0x108[8];
19 /* 0x128 */ GXColor field_0x128[8];
20 /* 0x148 */ GXColor field_0x148[8];
21 /* 0x168 */ s16 field_0x168;
22 /* 0x16A */ s16 field_0x16a;
23 /* 0x16C */ u8 field_0x16c;
24 /* 0x16D */ u8 field_0x16d;
25};
26
28 /* 0x0 */ u8 mFlashDuration;
29
31};
32
34 static const void* m_res;
35};
36
38public:
39 enum palette_e {
40 /* 0x11 */ PALETTE_11 = 0x11,
41 /* 0x12 */ PALETTE_12,
42 /* 0x13 */ PALETTE_13,
43 /* 0x14 */ PALETTE_14,
44 /* 0x15 */ PALETTE_15,
45 /* 0x16 */ PALETTE_16,
46 /* 0x17 */ PALETTE_17,
47 /* 0x18 */ PALETTE_18,
48 /* 0x19 */ PALETTE_19,
49 /* 0x1A */ PALETTE_1A,
50 };
51
53 mpWorldData = NULL;
54 mpRegionData = NULL;
55 mpStageData = NULL;
56 mpRoomData = NULL;
57 mpFmapData = NULL;
58 mpStageArc = NULL;
59 mStartStageNo = 0;
60 mRegionIndex = 0;
61 mStageNo = 0;
62 mRoomNo = 0;
63 mRegionNo = 0;
64 mRoomIndex = 0;
65 mStageOffsetX = 0.0f;
66 mStageOffsetZ = 0.0f;
67 mRegionOffsetX = 0.0f;
68 mRegionOffsetZ = 0.0f;
69 field_0xb8 = 0;
70 mSaveTableNo = 0;
72 mDrawEnable = false;
73 }
74
75 void init(u8*, u16, u16, u16, u16);
77 bool isSwitchSpecialOff(int);
78 bool isSwitch(group_class const*);
80 int*);
81 void preDrawPath();
82 bool isDrawPath();
83 bool isDrawRoom();
84 void postDrawPath();
85 void postRenderingMap();
86 void roomSetteing();
87 room_class* getFirstRoomPointer();
88 void getFirstRegion();
89 void getFirstStage();
90 void getFirstRoom();
91 bool getNextRoom();
92 bool getNextStage();
93 bool getNextRegion();
94 room_class* getNextRoomPointer();
95
97 bool isRenderingFloor(int) { return true; }
99 void afterDrawPath() {}
101 bool isDrawEnable() { return mDrawEnable; }
102
103 /* 0x24 */ Mtx mViewMtx;
104 /* 0x54 */ Vec mEye;
105 /* 0x60 */ Vec mCenter;
106 /* 0x6C */ Vec mUp;
113 /* 0x90 */ int mStartStageNo;
114 /* 0x94 */ int mRegionIndex;
115 /* 0x98 */ int mStageNo;
116 /* 0x9C */ int mRoomNo;
117 /* 0xA0 */ int mRegionNo;
118 /* 0xA4 */ int mRoomIndex;
119 /* 0xA8 */ f32 mStageOffsetX;
120 /* 0xAC */ f32 mStageOffsetZ;
121 /* 0xB0 */ f32 mRegionOffsetX;
122 /* 0xB4 */ f32 mRegionOffsetZ;
123 /* 0xB8 */ u8 field_0xb8;
124 /* 0xB9 */ u8 mSaveTableNo;
126 /* 0xBB */ bool mDrawEnable;
127};
128
130public:
131 virtual void copySrcToHio();
132 virtual void copyHioToDst();
133 virtual void copyBufToHio(const char*);
134};
135
137public:
138 dMfm_HIO_c();
139 virtual ~dMfm_HIO_c() { mMySelfPointer = NULL; }
140 virtual void listenPropertyEvent(const JORPropertyEvent*);
141 virtual void genMessage(JORMContext*);
142 virtual u32 addString(char* param_1, u32 param_2, u32 param_3) { return field_0xc.addString(param_1, param_2, param_3); }
143 virtual u32 addData(char* param_1, u32 param_2, u32 param_3) {
144 UNUSED(param_2);
145 UNUSED(param_3);
146 memcpy(param_1, dMfm_HIO_prm_res_dst_s::m_res, 366);
147 return 366;
148 }
149 virtual void copyReadBufToData(const char* param_1, s32 param_2) {
150 UNUSED(param_2);
151 field_0xc.copyBufToHio(param_1);
152 }
153 virtual u32 addStringBinary(char* param_1, u32 param_2, u32 param_3) { return field_0xc.addStringBinary(param_1, param_2, param_3); }
154
155 /* 0x04 */ u8 field_0x4[0x8 - 0x4];
158 /* 0x18 */ u8 field_0x18;
159
162};
163
165public:
168 bool isFlashRoomNoCheck(int) const;
169 void setPointColor(f32);
172 void _create(u16, u16, u16, u16, void*);
173 void _delete();
174 void draw();
175 void rendering(line_class const*);
176 int getLineWidth(int);
177 bool isDrawType(int);
178 void setFlashOn(int, int, u8*, int);
179 const GXColor* getLineColor(int, int);
180 const GXColor* getBackColor() const;
181 const GXColor* getColor(int);
182 void setTexture(u16, u16, u16, u16);
184
186 return (f32)(g_Counter.mCounter0 % param_0) / (f32)param_0;
187 }
188
190 // probably a fakematch
191 bool ret = true;
193 return ret;
194 }
195
196 void setFlashOff() {
198 mFlash = false;
199 }
200
202 f32 i_offsetY, int i_stageNo, int* o_stageNo, int* o_roomNo) {
203 return renderingFmap_c::getPointStagePathInnerNo(i_regionData, i_offsetX, i_offsetY,
204 i_stageNo, o_stageNo, o_roomNo);
205 }
206
208#if DEBUG
210#endif
211 /* 0xBC */ ResTIMG* mResTIMG;
212 /* 0xC0 */ u8* mMapImage_p;
215 /* 0xCC */ int field_0xcc;
216#if DEBUG
218#endif
219 /* 0xD0 */ f32 mZoomRate;
220 /* 0xD4 */ int mLineNo;
221 /* 0xD8 */ bool mFlash;
222 /* 0xD9 */ bool mLastFlash;
223 /* 0xDC */ int mStageCursor;
224 /* 0xE0 */ int mLastStageCursor;
225 /* 0xE4 */ u8 mRegionCursor;
226 /* 0xE5 */ u8 mFlashTimer;
227 /* 0xE8 */ u8* mp_roomList;
228 /* 0xEC */ int m_roomListNumber;
229
231};
232
233
234#endif /* D_MENU_D_MENU_FMAP_MAP_H */
counter_class g_Counter
Definition c_counter.cpp:8
Definition JORMContext.h:128
Definition d_menu_fmap_map.h:164
bool isFlashRoomNoCheck(int) const
Definition d_menu_fmap_map.cpp:410
u8 * mMapImage_p
Definition d_menu_fmap_map.h:212
u8 * mp_roomList
Definition d_menu_fmap_map.h:227
int m_roomListNumber
Definition d_menu_fmap_map.h:228
int mLineNo
Definition d_menu_fmap_map.h:220
bool mFlash
Definition d_menu_fmap_map.h:221
u8 mRegionCursor
Definition d_menu_fmap_map.h:225
void setRendering(dMenu_Fmap_world_data_c *, int, f32, f32, f32, f32)
Definition d_menu_fmap_map.cpp:668
int field_0xcc
Definition d_menu_fmap_map.h:215
ResTIMG * mResTIMG
Definition d_menu_fmap_map.h:211
f32 mZoomRate
Definition d_menu_fmap_map.h:219
dMfm_prm_res_s * m_res
Definition d_menu_fmap_map.h:213
bool isDrawEnable()
Definition d_menu_fmap_map.h:189
dMenu_FmapMap_c()
Definition d_menu_fmap_map.cpp:451
dMpath_RGB5A3_palDt_s * m_palette
Definition d_menu_fmap_map.h:214
dMenu_Fmap_world_data_c * getWorldData()
Definition d_menu_fmap_map.h:209
int getPointStagePathInnerNo(dMenu_Fmap_region_data_c *i_regionData, f32 i_offsetX, f32 i_offsetY, int i_stageNo, int *o_stageNo, int *o_roomNo)
Definition d_menu_fmap_map.h:201
int mStageCursor
Definition d_menu_fmap_map.h:223
void rendering(line_class const *)
Definition d_menu_fmap_map.cpp:533
void setFmapPaletteColor(palette_e, GXColor const &)
Definition d_menu_fmap_map.cpp:405
int mLastStageCursor
Definition d_menu_fmap_map.h:224
void draw()
Definition d_menu_fmap_map.cpp:503
f32 getRateWithFrameCount(int param_0)
Definition d_menu_fmap_map.h:185
bool mLastFlash
Definition d_menu_fmap_map.h:222
const GXColor * getLineColor(int, int)
Definition d_menu_fmap_map.cpp:580
void setTexture(u16, u16, u16, u16)
Definition d_menu_fmap_map.cpp:658
~dMenu_FmapMap_c()
Definition d_menu_fmap_map.cpp:474
dMenu_Fmap_world_data_c * mpWorldData
Definition d_menu_fmap_map.h:217
void setFlashOff()
Definition d_menu_fmap_map.h:196
void _create(u16, u16, u16, u16, void *)
Definition d_menu_fmap_map.cpp:478
bool isDrawType(int)
Definition d_menu_fmap_map.cpp:567
int getLineWidth(int)
Definition d_menu_fmap_map.cpp:543
const GXColor * getColor(int)
Definition d_menu_fmap_map.cpp:605
u8 mFlashTimer
Definition d_menu_fmap_map.h:226
ResTIMG * getResTIMGPointer()
Definition d_menu_fmap_map.h:207
void setFlashOn(int, int, u8 *, int)
Definition d_menu_fmap_map.cpp:571
void _delete()
Definition d_menu_fmap_map.cpp:490
const GXColor * getBackColor() const
Definition d_menu_fmap_map.cpp:600
void setPointColor(f32)
Definition d_menu_fmap_map.cpp:425
static dMenu_FmapMap_c * mMySelfPointer
Definition d_menu_fmap_map.h:230
Definition d_map_path_fmap.h:63
Definition d_map_path_fmap.h:202
Definition d_map_path_fmap.h:92
Definition d_map_path_fmap.h:130
Definition d_map_path_fmap.h:142
Definition d_map_path_fmap.h:252
Definition d_menu_fmap_map.h:136
dMfm_HIO_c()
Definition d_menu_fmap_map.cpp:282
virtual ~dMfm_HIO_c()
Definition d_menu_fmap_map.h:139
virtual void copyReadBufToData(const char *param_1, s32 param_2)
Definition d_menu_fmap_map.h:149
dMenu_FmapMap_c * field_0x8
Definition d_menu_fmap_map.h:156
u8 field_0x18
Definition d_menu_fmap_map.h:158
dMfm_HIO_list_c field_0xc
Definition d_menu_fmap_map.h:157
static dMfm_HIO_c * mMySelfPointer
Definition d_menu_fmap_map.h:160
virtual u32 addStringBinary(char *param_1, u32 param_2, u32 param_3)
Definition d_menu_fmap_map.h:153
u8 field_0x4[0x8 - 0x4]
Definition d_menu_fmap_map.h:155
static dMpath_HIO_n::list_s l_list
Definition d_menu_fmap_map.h:161
virtual u32 addString(char *param_1, u32 param_2, u32 param_3)
Definition d_menu_fmap_map.h:142
virtual u32 addData(char *param_1, u32 param_2, u32 param_3)
Definition d_menu_fmap_map.h:143
virtual void genMessage(JORMContext *)
Definition d_menu_fmap_map.cpp:288
virtual void listenPropertyEvent(const JORPropertyEvent *)
Definition d_menu_fmap_map.cpp:301
Definition d_menu_fmap_map.h:129
virtual void copySrcToHio()
Definition d_menu_fmap_map.cpp:374
virtual void copyBufToHio(const char *)
Definition d_menu_fmap_map.cpp:382
virtual void copyHioToDst()
Definition d_menu_fmap_map.cpp:378
Definition d_map_path.h:58
Definition d_map_path.h:43
u32 addStringBinary(char *, u32, u32) const
Definition d_map_path.cpp:100
u32 addString(char *, u32, u32) const
Definition d_map_path.cpp:95
Definition d_map_path.h:193
Definition d_menu_fmap_map.h:37
bool isDrawPath()
Definition d_menu_fmap_map.cpp:122
u8 field_0xb8
Definition d_menu_fmap_map.h:123
void postDrawPath()
Definition d_menu_fmap_map.cpp:132
bool getNextRegion()
Definition d_menu_fmap_map.cpp:246
Mtx mViewMtx
Definition d_menu_fmap_map.h:103
room_class * getFirstRoomPointer()
Definition d_menu_fmap_map.cpp:163
int mRegionIndex
Definition d_menu_fmap_map.h:114
f32 mStageOffsetZ
Definition d_menu_fmap_map.h:120
void getFirstStage()
Definition d_menu_fmap_map.cpp:196
bool isRenderingFloor(int)
Definition d_menu_fmap_map.h:97
Vec mCenter
Definition d_menu_fmap_map.h:105
int mStageNo
Definition d_menu_fmap_map.h:115
bool getNextRoom()
Definition d_menu_fmap_map.cpp:218
void getFirstRoom()
Definition d_menu_fmap_map.cpp:208
dMenu_Fmap_world_data_c * mpWorldData
Definition d_menu_fmap_map.h:107
int mRegionNo
Definition d_menu_fmap_map.h:117
void postRenderingMap()
Definition d_menu_fmap_map.cpp:138
bool isSwitchSpecialOff(int)
Definition d_menu_fmap_map.cpp:47
Vec mEye
Definition d_menu_fmap_map.h:104
int mRoomNo
Definition d_menu_fmap_map.h:116
int mRoomIndex
Definition d_menu_fmap_map.h:118
dMenu_Fmap_stage_data_c * mpStageData
Definition d_menu_fmap_map.h:109
palette_e
Definition d_menu_fmap_map.h:39
@ PALETTE_15
Definition d_menu_fmap_map.h:44
@ PALETTE_13
Definition d_menu_fmap_map.h:42
@ PALETTE_19
Definition d_menu_fmap_map.h:48
@ PALETTE_17
Definition d_menu_fmap_map.h:46
@ PALETTE_14
Definition d_menu_fmap_map.h:43
@ PALETTE_11
Definition d_menu_fmap_map.h:40
@ PALETTE_16
Definition d_menu_fmap_map.h:45
@ PALETTE_1A
Definition d_menu_fmap_map.h:49
@ PALETTE_12
Definition d_menu_fmap_map.h:41
@ PALETTE_18
Definition d_menu_fmap_map.h:47
room_class * getNextRoomPointer()
Definition d_menu_fmap_map.cpp:259
dMenu_Fmap_region_data_c * mpRegionData
Definition d_menu_fmap_map.h:108
int getPointStagePathInnerNo(dMenu_Fmap_region_data_c *, f32, f32, int, int *, int *)
Definition d_menu_fmap_map.cpp:85
void roomSetteing()
Definition d_menu_fmap_map.cpp:143
bool isSwitch(group_class const *)
Definition d_menu_fmap_map.cpp:51
int getNowDrawRegionNo()
Definition d_menu_fmap_map.h:100
f32 mRegionOffsetX
Definition d_menu_fmap_map.h:121
void entry(dMenu_Fmap_world_data_c *, int, f32, f32, f32)
Definition d_menu_fmap_map.cpp:35
int mStartStageNo
Definition d_menu_fmap_map.h:113
bool mDrawEnable
Definition d_menu_fmap_map.h:126
dMenu_Fmap_stage_arc_data_c * mpStageArc
Definition d_menu_fmap_map.h:112
u8 mVisitedRoomSaveTableNo
Definition d_menu_fmap_map.h:125
Vec mUp
Definition d_menu_fmap_map.h:106
bool getNextStage()
Definition d_menu_fmap_map.cpp:231
renderingFmap_c()
Definition d_menu_fmap_map.h:52
void getFirstRegion()
Definition d_menu_fmap_map.cpp:186
bool isDrawRoom()
Definition d_menu_fmap_map.cpp:126
dMenu_Fmap_data_c * mpFmapData
Definition d_menu_fmap_map.h:111
dMenu_Fmap_room_data_c * mpRoomData
Definition d_menu_fmap_map.h:110
void beforeDrawPath()
Definition d_menu_fmap_map.h:98
f32 mRegionOffsetZ
Definition d_menu_fmap_map.h:122
f32 mStageOffsetX
Definition d_menu_fmap_map.h:119
~renderingFmap_c()
Definition d_menu_fmap_map.h:96
void afterDrawPath()
Definition d_menu_fmap_map.h:99
bool isDrawEnable()
Definition d_menu_fmap_map.h:101
u8 mSaveTableNo
Definition d_menu_fmap_map.h:124
void preDrawPath()
Definition d_menu_fmap_map.cpp:103
static initFunc init[]
Definition d_menu_collect.cpp:39
f32 Mtx[3][4]
Definition mtx.h:25
unsigned long u32
Definition types.h:12
signed short int s16
Definition types.h:9
float f32
Definition types.h:25
unsigned short int u16
Definition types.h:10
signed long s32
Definition types.h:11
unsigned char u8
Definition types.h:8
Definition JORReflexible.h:10
Image data header.
Definition JUTTexture.h:18
Definition mtx.h:13
Definition GXStruct.h:30
u32 mCounter0
Definition c_counter.h:7
Definition d_map_path.h:113
Definition d_menu_fmap_map.h:33
static const void * m_res
Definition d_menu_fmap_map.h:34
Definition d_menu_fmap_map.h:27
u8 mFlashDuration
Definition d_menu_fmap_map.h:28
static const dMfm_HIO_prm_res_src_s m_other
Definition d_menu_fmap_map.h:501
Definition d_menu_fmap_map.h:11
GXColor field_0x148[8]
Definition d_menu_fmap_map.h:20
GXColor field_0x108[8]
Definition d_menu_fmap_map.h:18
u8 field_0x16c
Definition d_menu_fmap_map.h:23
dMpath_RGB5A3_palDt_s palette_data[27]
Definition d_menu_fmap_map.h:12
s16 field_0x16a
Definition d_menu_fmap_map.h:22
GXColor field_0x128[8]
Definition d_menu_fmap_map.h:19
GXColor field_0xe4
Definition d_menu_fmap_map.h:16
GXColor field_0xdc
Definition d_menu_fmap_map.h:14
GXColor field_0xe8[8]
Definition d_menu_fmap_map.h:17
GXColor field_0xe0
Definition d_menu_fmap_map.h:15
GXColor field_0xd8
Definition d_menu_fmap_map.h:13
u8 field_0x16d
Definition d_menu_fmap_map.h:24
s16 field_0x168
Definition d_menu_fmap_map.h:21
Definition d_map_path.h:34
Definition d_map_path.h:15