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
34public:
35 enum palette_e {
36 /* 0x11 */ PALETTE_11 = 0x11,
37 /* 0x12 */ PALETTE_12,
38 /* 0x13 */ PALETTE_13,
39 /* 0x14 */ PALETTE_14,
40 /* 0x15 */ PALETTE_15,
41 /* 0x16 */ PALETTE_16,
42 /* 0x17 */ PALETTE_17,
43 /* 0x18 */ PALETTE_18,
44 /* 0x19 */ PALETTE_19,
45 /* 0x1A */ PALETTE_1A,
46 };
47
55 mStartStageNo = 0;
56 mRegionIndex = 0;
57 mStageNo = 0;
58 mRoomNo = 0;
59 mRegionNo = 0;
60 mRoomIndex = 0;
61 mStageOffsetX = 0.0f;
62 mStageOffsetZ = 0.0f;
63 mRegionOffsetX = 0.0f;
64 mRegionOffsetZ = 0.0f;
65 field_0xb8 = 0;
66 mSaveTableNo = 0;
68 mDrawEnable = false;
69 }
70
71 /* 801CE15C */ void init(u8*, u16, u16, u16, u16);
72 /* 801CE188 */ void entry(dMenu_Fmap_world_data_c*, int, f32, f32, f32);
73 /* 801CE224 */ bool isSwitchSpecialOff(int);
74 /* 801CE288 */ bool isSwitch(group_class const*);
75 /* 801CE3C0 */ int getPointStagePathInnerNo(dMenu_Fmap_region_data_c*, f32, f32, int, int*,
76 int*);
77 /* 801CE410 */ void preDrawPath();
78 /* 801CE4D4 */ bool isDrawPath();
79 /* 801CE4DC */ bool isDrawRoom();
80 /* 801CE560 */ void postDrawPath();
81 /* 801CE5B8 */ void postRenderingMap();
82 /* 801CE5EC */ void roomSetteing();
83 /* 801CE6A8 */ room_class* getFirstRoomPointer();
84 /* 801CE75C */ void getFirstRegion();
85 /* 801CE7A8 */ void getFirstStage();
86 /* 801CE80C */ void getFirstRoom();
87 /* 801CE84C */ bool getNextRoom();
88 /* 801CE8B8 */ bool getNextStage();
89 /* 801CE93C */ bool getNextRegion();
90 /* 801CE9A4 */ room_class* getNextRoomPointer();
91
92 /* 801CF4D0 */ ~renderingFmap_c() {}
93 /* 801CF55C */ bool isRenderingFloor(int) { return true; }
94 /* 801CF564 */ void beforeDrawPath() {}
95 /* 801CF568 */ void afterDrawPath() {}
96 int getNowDrawRegionNo() { return mRegionNo; }
97 bool isDrawEnable() { return mDrawEnable; }
98
99 /* 0x24 */ Mtx mViewMtx;
100 /* 0x54 */ cXyz mEye;
101 /* 0x60 */ cXyz mCenter;
102 /* 0x6C */ cXyz mUp;
109 /* 0x90 */ int mStartStageNo;
110 /* 0x94 */ int mRegionIndex;
111 /* 0x98 */ int mStageNo;
112 /* 0x9C */ int mRoomNo;
113 /* 0xA0 */ int mRegionNo;
114 /* 0xA4 */ int mRoomIndex;
115 /* 0xA8 */ f32 mStageOffsetX;
116 /* 0xAC */ f32 mStageOffsetZ;
117 /* 0xB0 */ f32 mRegionOffsetX;
118 /* 0xB4 */ f32 mRegionOffsetZ;
119 /* 0xB8 */ u8 field_0xb8;
120 /* 0xB9 */ u8 mSaveTableNo;
122 /* 0xBB */ bool mDrawEnable;
123 };
124
126public:
127 /* 801CEAAC */ void setFmapPaletteColor(palette_e, GXColor const&);
128 /* 801CEA38 */ void setFmapPaletteColor(palette_e, u8, u8, u8, u8);
129 /* 801CEAE0 */ bool isFlashRoomNoCheck(int) const;
130 /* 801CEB1C */ void setPointColor(f32);
131 /* 801CEC24 */ dMenu_FmapMap_c();
132 /* 801CED38 */ ~dMenu_FmapMap_c();
133 /* 801CEDE8 */ void _create(u16, u16, u16, u16, void*);
134 /* 801CEE3C */ void _delete();
135 /* 801CEE94 */ void draw();
136 /* 801CF0B4 */ void rendering(line_class const*);
137 /* 801CF12C */ int getLineWidth(int);
138 /* 801CF1D4 */ bool isDrawType(int);
139 /* 801CF1E0 */ void setFlashOn(int, int, u8*, int);
140 /* 801CF208 */ const GXColor* getLineColor(int, int);
141 /* 801CF298 */ const GXColor* getBackColor() const;
142 /* 801CF2A0 */ const GXColor* getColor(int);
143 /* 801CF394 */ void setTexture(u16, u16, u16, u16);
144 /* 801CF450 */ void setRendering(dMenu_Fmap_world_data_c*, int, f32, f32, f32, f32);
145
147 return (f32)(g_Counter.mCounter0 % param_0) / (f32)param_0;
148 }
149
151 // probably a fakematch
152 bool ret = true;
154 return ret;
155 }
156
157 void setFlashOff() {
159 mFlash = false;
160 }
161
167
169
170 /* 0xBC */ ResTIMG* mResTIMG;
171 /* 0xC0 */ u8* mMapImage_p;
174 /* 0xCC */ int field_0xcc;
175 /* 0xD0 */ f32 mZoomRate;
176 /* 0xD4 */ int mLineNo;
177 /* 0xD8 */ bool mFlash;
178 /* 0xD9 */ bool mLastFlash;
179 /* 0xDC */ int mStageCursor;
180 /* 0xE0 */ int mLastStageCursor;
181 /* 0xE4 */ u8 mRegionCursor;
182 /* 0xE5 */ u8 mFlashTimer;
183 /* 0xE8 */ u8* mFlashRooms;
184 /* 0xEC */ int mFlashRoomCount;
185};
186
187
188#endif /* D_MENU_D_MENU_FMAP_MAP_H */
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition d_menu_fmap_map.h:125
bool isFlashRoomNoCheck(int) const
Definition d_menu_fmap_map.cpp:428
u8 * mMapImage_p
Definition d_menu_fmap_map.h:171
int mLineNo
Definition d_menu_fmap_map.h:176
bool mFlash
Definition d_menu_fmap_map.h:177
u8 mRegionCursor
Definition d_menu_fmap_map.h:181
void setRendering(dMenu_Fmap_world_data_c *, int, f32, f32, f32, f32)
Definition d_menu_fmap_map.cpp:701
int field_0xcc
Definition d_menu_fmap_map.h:174
ResTIMG * mResTIMG
Definition d_menu_fmap_map.h:170
f32 mZoomRate
Definition d_menu_fmap_map.h:175
dMfm_prm_res_s * m_res
Definition d_menu_fmap_map.h:172
bool isDrawEnable()
Definition d_menu_fmap_map.h:150
dMenu_FmapMap_c()
Definition d_menu_fmap_map.cpp:472
dMpath_RGB5A3_palDt_s * m_palette
Definition d_menu_fmap_map.h:173
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:162
int mStageCursor
Definition d_menu_fmap_map.h:179
void rendering(line_class const *)
Definition d_menu_fmap_map.cpp:554
void setFmapPaletteColor(palette_e, GXColor const &)
Definition d_menu_fmap_map.cpp:422
int mLastStageCursor
Definition d_menu_fmap_map.h:180
void draw()
Definition d_menu_fmap_map.cpp:527
f32 getRateWithFrameCount(int param_0)
Definition d_menu_fmap_map.h:146
bool mLastFlash
Definition d_menu_fmap_map.h:178
const GXColor * getLineColor(int, int)
Definition d_menu_fmap_map.cpp:607
void setTexture(u16, u16, u16, u16)
Definition d_menu_fmap_map.cpp:689
~dMenu_FmapMap_c()
Definition d_menu_fmap_map.cpp:492
void setFlashOff()
Definition d_menu_fmap_map.h:157
int mFlashRoomCount
Definition d_menu_fmap_map.h:184
void _create(u16, u16, u16, u16, void *)
Definition d_menu_fmap_map.cpp:497
bool isDrawType(int)
Definition d_menu_fmap_map.cpp:591
int getLineWidth(int)
Definition d_menu_fmap_map.cpp:566
const GXColor * getColor(int)
Definition d_menu_fmap_map.cpp:635
u8 mFlashTimer
Definition d_menu_fmap_map.h:182
ResTIMG * getResTIMGPointer()
Definition d_menu_fmap_map.h:168
u8 * mFlashRooms
Definition d_menu_fmap_map.h:183
void setFlashOn(int, int, u8 *, int)
Definition d_menu_fmap_map.cpp:596
void _delete()
Definition d_menu_fmap_map.cpp:510
const GXColor * getBackColor() const
Definition d_menu_fmap_map.cpp:629
void setPointColor(f32)
Definition d_menu_fmap_map.cpp:442
Definition d_map_path_fmap.h:56
Definition d_map_path_fmap.h:195
Definition d_map_path_fmap.h:85
Definition d_map_path_fmap.h:123
Definition d_map_path_fmap.h:135
Definition d_map_path_fmap.h:245
Definition d_menu_fmap_map.h:33
bool isDrawPath()
Definition d_menu_fmap_map.cpp:225
u8 field_0xb8
Definition d_menu_fmap_map.h:119
void postDrawPath()
Definition d_menu_fmap_map.cpp:238
bool getNextRegion()
Definition d_menu_fmap_map.cpp:367
Mtx mViewMtx
Definition d_menu_fmap_map.h:99
room_class * getFirstRoomPointer()
Definition d_menu_fmap_map.cpp:273
int mRegionIndex
Definition d_menu_fmap_map.h:110
f32 mStageOffsetZ
Definition d_menu_fmap_map.h:116
cXyz mUp
Definition d_menu_fmap_map.h:102
void getFirstStage()
Definition d_menu_fmap_map.cpp:310
bool isRenderingFloor(int)
Definition d_menu_fmap_map.h:93
int mStageNo
Definition d_menu_fmap_map.h:111
bool getNextRoom()
Definition d_menu_fmap_map.cpp:335
void getFirstRoom()
Definition d_menu_fmap_map.cpp:324
dMenu_Fmap_world_data_c * mpWorldData
Definition d_menu_fmap_map.h:103
int mRegionNo
Definition d_menu_fmap_map.h:113
void postRenderingMap()
Definition d_menu_fmap_map.cpp:245
bool isSwitchSpecialOff(int)
Definition d_menu_fmap_map.cpp:154
int mRoomNo
Definition d_menu_fmap_map.h:112
int mRoomIndex
Definition d_menu_fmap_map.h:114
dMenu_Fmap_stage_data_c * mpStageData
Definition d_menu_fmap_map.h:105
palette_e
Definition d_menu_fmap_map.h:35
@ PALETTE_15
Definition d_menu_fmap_map.h:40
@ PALETTE_13
Definition d_menu_fmap_map.h:38
@ PALETTE_19
Definition d_menu_fmap_map.h:44
@ PALETTE_17
Definition d_menu_fmap_map.h:42
@ PALETTE_14
Definition d_menu_fmap_map.h:39
@ PALETTE_11
Definition d_menu_fmap_map.h:36
@ PALETTE_16
Definition d_menu_fmap_map.h:41
@ PALETTE_1A
Definition d_menu_fmap_map.h:45
@ PALETTE_12
Definition d_menu_fmap_map.h:37
@ PALETTE_18
Definition d_menu_fmap_map.h:43
room_class * getNextRoomPointer()
Definition d_menu_fmap_map.cpp:381
dMenu_Fmap_region_data_c * mpRegionData
Definition d_menu_fmap_map.h:104
int getPointStagePathInnerNo(dMenu_Fmap_region_data_c *, f32, f32, int, int *, int *)
Definition d_menu_fmap_map.cpp:196
void roomSetteing()
Definition d_menu_fmap_map.cpp:252
bool isSwitch(group_class const *)
Definition d_menu_fmap_map.cpp:160
int getNowDrawRegionNo()
Definition d_menu_fmap_map.h:96
f32 mRegionOffsetX
Definition d_menu_fmap_map.h:117
cXyz mEye
Definition d_menu_fmap_map.h:100
void entry(dMenu_Fmap_world_data_c *, int, f32, f32, f32)
Definition d_menu_fmap_map.cpp:141
int mStartStageNo
Definition d_menu_fmap_map.h:109
bool mDrawEnable
Definition d_menu_fmap_map.h:122
cXyz mCenter
Definition d_menu_fmap_map.h:101
dMenu_Fmap_stage_arc_data_c * mpStageArc
Definition d_menu_fmap_map.h:108
u8 mVisitedRoomSaveTableNo
Definition d_menu_fmap_map.h:121
bool getNextStage()
Definition d_menu_fmap_map.cpp:350
renderingFmap_c()
Definition d_menu_fmap_map.h:48
void getFirstRegion()
Definition d_menu_fmap_map.cpp:298
bool isDrawRoom()
Definition d_menu_fmap_map.cpp:230
dMenu_Fmap_data_c * mpFmapData
Definition d_menu_fmap_map.h:107
dMenu_Fmap_room_data_c * mpRoomData
Definition d_menu_fmap_map.h:106
void beforeDrawPath()
Definition d_menu_fmap_map.h:94
f32 mRegionOffsetZ
Definition d_menu_fmap_map.h:118
f32 mStageOffsetX
Definition d_menu_fmap_map.h:115
~renderingFmap_c()
Definition d_menu_fmap_map.h:92
void afterDrawPath()
Definition d_menu_fmap_map.h:95
bool isDrawEnable()
Definition d_menu_fmap_map.h:97
u8 mSaveTableNo
Definition d_menu_fmap_map.h:120
void preDrawPath()
Definition d_menu_fmap_map.cpp:205
u8 g_Counter[12+4]
Definition c_counter.cpp:10
static initFunc init[]
Definition d_menu_collect.cpp:42
f32 Mtx[3][4]
Definition mtx.h:15
Image data header.
Definition d_menu_dmap_map.cpp:109
Definition d_a_ep.cpp:68
Definition d_a_hozelda.cpp:20
Definition d_menu_dmap_map.cpp:50
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:523
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:161
Definition d_menu_dmap_map.cpp:115
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