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
49 mpWorldData = NULL;
50 mpRegionData = NULL;
51 mpStageData = NULL;
52 mpRoomData = NULL;
53 mpFmapData = NULL;
54 mpStageArc = NULL;
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 void init(u8*, u16, u16, u16, u16);
73 bool isSwitchSpecialOff(int);
74 bool isSwitch(group_class const*);
76 int*);
77 void preDrawPath();
78 bool isDrawPath();
79 bool isDrawRoom();
80 void postDrawPath();
81 void postRenderingMap();
82 void roomSetteing();
83 room_class* getFirstRoomPointer();
84 void getFirstRegion();
85 void getFirstStage();
86 void getFirstRoom();
87 bool getNextRoom();
88 bool getNextStage();
89 bool getNextRegion();
90 room_class* getNextRoomPointer();
91
93 bool isRenderingFloor(int) { return true; }
95 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:
129 bool isFlashRoomNoCheck(int) const;
130 void setPointColor(f32);
133 void _create(u16, u16, u16, u16, void*);
134 void _delete();
135 void draw();
136 void rendering(line_class const*);
137 int getLineWidth(int);
138 bool isDrawType(int);
139 void setFlashOn(int, int, u8*, int);
140 const GXColor* getLineColor(int, int);
141 const GXColor* getBackColor() const;
142 const GXColor* getColor(int);
143 void setTexture(u16, u16, u16, u16);
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
163 f32 i_offsetY, int i_stageNo, int* o_stageNo, int* o_roomNo) {
164 return renderingFmap_c::getPointStagePathInnerNo(i_regionData, i_offsetX, i_offsetY,
165 i_stageNo, o_stageNo, o_roomNo);
166 }
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 */
counter_class g_Counter
Definition c_counter.cpp:8
Definition d_menu_fmap_map.h:125
bool isFlashRoomNoCheck(int) const
Definition d_menu_fmap_map.cpp:288
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:539
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:326
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:404
void setFmapPaletteColor(palette_e, GXColor const &)
Definition d_menu_fmap_map.cpp:283
int mLastStageCursor
Definition d_menu_fmap_map.h:180
void draw()
Definition d_menu_fmap_map.cpp:374
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:451
void setTexture(u16, u16, u16, u16)
Definition d_menu_fmap_map.cpp:529
~dMenu_FmapMap_c()
Definition d_menu_fmap_map.cpp:345
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:349
bool isDrawType(int)
Definition d_menu_fmap_map.cpp:438
int getLineWidth(int)
Definition d_menu_fmap_map.cpp:414
const GXColor * getColor(int)
Definition d_menu_fmap_map.cpp:476
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:442
void _delete()
Definition d_menu_fmap_map.cpp:361
const GXColor * getBackColor() const
Definition d_menu_fmap_map.cpp:471
void setPointColor(f32)
Definition d_menu_fmap_map.cpp:300
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_map_path.h:88
Definition d_menu_fmap_map.h:33
bool isDrawPath()
Definition d_menu_fmap_map.cpp:109
u8 field_0xb8
Definition d_menu_fmap_map.h:119
void postDrawPath()
Definition d_menu_fmap_map.cpp:119
bool getNextRegion()
Definition d_menu_fmap_map.cpp:233
Mtx mViewMtx
Definition d_menu_fmap_map.h:99
room_class * getFirstRoomPointer()
Definition d_menu_fmap_map.cpp:150
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:183
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:205
void getFirstRoom()
Definition d_menu_fmap_map.cpp:195
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:125
bool isSwitchSpecialOff(int)
Definition d_menu_fmap_map.cpp:44
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:246
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:82
void roomSetteing()
Definition d_menu_fmap_map.cpp:130
bool isSwitch(group_class const *)
Definition d_menu_fmap_map.cpp:48
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:32
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:218
renderingFmap_c()
Definition d_menu_fmap_map.h:48
void getFirstRegion()
Definition d_menu_fmap_map.cpp:173
bool isDrawRoom()
Definition d_menu_fmap_map.cpp:113
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:90
static initFunc init[]
Definition d_menu_collect.cpp:39
f32 Mtx[3][4]
Definition mtx.h:25
signed short int s16
Definition types.h:9
float f32
Definition types.h:25
unsigned short int u16
Definition types.h:10
unsigned char u8
Definition types.h:8
Image data header.
Definition JUTTexture.h:18
Definition GXStruct.h:30
Definition c_xyz.h:7
u32 mCounter0
Definition c_counter.h:7
Definition d_map_path.h:8
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:372
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