Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_menu_dmap_map.h
Go to the documentation of this file.
1#ifndef D_MENU_D_MENU_DMAP_MAP_H
2#define D_MENU_D_MENU_DMAP_MAP_H
3
4#include "d/d_menu_dmap.h"
5#include <cmath.h>
6
8public:
9 virtual ~dMenu_DmapMap_c() {}
10 void _create(u16, u16, u16, u16, void*);
11 void _delete();
12 void setTexture(u16, u16, u16, u16);
13 void setPos(int, int, f32, f32, f32, bool, f32);
14
15 const renderingDmap_c* getRendPointer(int i_no) const { return &mRend[i_no]; }
16 ResTIMG* getResTIMGPointer(int i_no) const { return mResTIMG[i_no]; }
17
18 /* 0x04 */ renderingDmap_c mRend[2];
19 /* 0x74 */ ResTIMG* mResTIMG[2];
20 /* 0x7C */ u8* mMapImage_p[2];
21 /* 0x84 */ int field_0x84;
22};
23
25public:
27 field_0x8c = NULL;
28 field_0x90 = 0.0f;
29 field_0x94 = 0.0f;
30 field_0x98 = 0.0f;
31 field_0x9c = 0.0f;
32 field_0xa0 = 0.0f;
33 field_0xa4 = 0.0f;
34 field_0xa8 = 0.0f;
35 field_0xac = 0.0f;
36 field_0xb0 = 0.0f;
37 field_0xb4 = 0.0f;
38 field_0xb8 = 0.0f;
39 field_0xbc = 0.0f;
40 field_0xc0 = 0.0f;
41 field_0xc4 = 0.0f;
42 field_0xc8 = 0.0f;
43 field_0xcc = 0.0f;
44 field_0xd0 = 0.0f;
45 field_0xd4 = 0.0f;
46 field_0xd8 = 0.0f;
47 field_0xe4 = 0;
48 field_0xe6 = 0;
49 field_0xe7 = 0;
50 field_0xe8 = 0;
51 field_0xe9 = 0;
52 field_0xea = 0;
53 field_0xeb = 0;
54 field_0xec = 0;
55 field_0xed = 0;
56 field_0xee = 0;
57 field_0xef = 0;
58 field_0xf0 = 0;
59 field_0xf1 = 0;
60 field_0xf2 = 0;
61 field_0xf3 = 0;
62 field_0xf4 = 0;
63 field_0xf5 = 0;
64 field_0xf6 = 0;
65 field_0xf7 = 0;
66 field_0xf8 = false;
67 field_0xf9 = false;
68 }
69
71 virtual bool isEnableZoomMove() const = 0;
72 virtual void calcZoomCenter(f32*, f32*) = 0;
73 virtual void getInitWholeMapScale(f32*, f32, f32, f32, f32) = 0;
74 virtual void getInitDispCenter(f32*, f32*) = 0;
75 virtual void getZoomMinMaxCheck(f32*, f32*, f32*, f32*, bool*, bool*) = 0;
76 virtual f32 getZoomCmPerPixel() = 0;
77 void draw() {}
78
79 f32 getMapBlendPer() const;
80 f32 getPixelStageSizeX() const;
81 f32 getPixelStageSizeZ() const;
82 f32 getPixelCenterX() const;
83 f32 getPixelCenterZ() const;
85 bool getTreasureList(f32*, f32*, s8*, u8*, s8*);
86 void cnvPosTo2Dpos(f32, f32, f32*, f32*) const;
87 void getPlayerDrawInfo(f32*, f32*, s16*) const;
88 s8 getRestartDrawInfo(f32*, f32*, s16*) const;
90 void moveFloor();
91 void wait_init_proc();
92 void wait_proc();
93 void zoomIn_init_proc();
94 void initZoomIn(u8);
95 void initZoomIn(u8, f32, f32);
97 void zoomCalcSet(f32);
98 void zoomIn_proc();
99 void initZoomOut(u8);
100 void initZoomWait(f32, f32);
101 void zoomWait_init_proc();
102 void zoomWait_proc();
103 void zoomOut_init_proc();
104 void zoomOut_proc();
105 void move();
106 s8 getPlayerStayFloorNo() const;
107 void _create(u16, u16, u16, u16, void*);
108 void _create(u16, u16, u16, u16, s8, void*);
109 void _delete();
110 bool isEnableZoomIn();
111 bool isEnableZoomOut();
114
117
118 s8 getNowStayFloorNo() const { return field_0xe7; }
119 s8 getTopFloorNo() const { return field_0xed; }
120 s8 getBottomFloorNo() const { return field_0xee; }
121 s8 getDispFloorNo() const { return field_0xeb; }
122 s8 getDispFloor2No() const { return field_0xec; }
123
124 f32 getDispCenterX() const { return field_0x9c; }
125 f32 getDispCenterZ() const { return field_0xa0; }
126
129
134
135 f32 getPixelPerCm() const { return 1.0f / field_0xbc; }
136
137 f32 makeStayFloorBlendPer(int param_0, f32 param_1) {
138 return param_0 + param_1;
139 }
140
141 int getFloorNo(f32 param_0) const {
142 return std::ceil(param_0);
143 }
144
145 f32 getBlendPer(f32 param_0) const {
146 return std::fmod(param_0, 1.0f);
147 }
148
149 bool isEndZoomIn() const { return field_0xf5 == 2; }
150 bool isEndZoomOut() const { return field_0xf5 == 0; }
151
153
158
159 /* 0x88 */ u8 field_0x88[0x8C - 0x88];
161 /* 0x90 */ f32 field_0x90;
162 /* 0x94 */ f32 field_0x94;
163 /* 0x98 */ f32 field_0x98;
164 /* 0x9C */ f32 field_0x9c;
165 /* 0xA0 */ f32 field_0xa0;
166 /* 0xA4 */ f32 field_0xa4;
167 /* 0xA8 */ f32 field_0xa8;
168 /* 0xAC */ f32 field_0xac;
169 /* 0xB0 */ f32 field_0xb0;
170 /* 0xB4 */ f32 field_0xb4;
171 /* 0xB8 */ f32 field_0xb8;
172 /* 0xBC */ f32 field_0xbc;
173 /* 0xC0 */ f32 field_0xc0;
174 /* 0xC4 */ f32 field_0xc4;
175 /* 0xC8 */ f32 field_0xc8;
176 /* 0xCC */ f32 field_0xcc;
177 /* 0xD0 */ f32 field_0xd0;
178 /* 0xD4 */ f32 field_0xd4;
179 /* 0xD8 */ f32 field_0xd8;
180 /* 0xDC */ f32 field_0xdc;
181 /* 0xE0 */ f32 field_0xe0;
182 /* 0xE4 */ u16 field_0xe4;
183 /* 0xE6 */ s8 field_0xe6;
184 /* 0xE7 */ s8 field_0xe7;
185 /* 0xE8 */ s8 field_0xe8;
186 /* 0xE9 */ u8 field_0xe9;
187 /* 0xEA */ s8 field_0xea;
188 /* 0xEB */ s8 field_0xeb;
189 /* 0xEC */ s8 field_0xec;
190 /* 0xED */ s8 field_0xed;
191 /* 0xEE */ s8 field_0xee;
192 /* 0xEF */ u8 field_0xef;
193 /* 0xF0 */ u8 field_0xf0;
194 /* 0xF1 */ u8 field_0xf1;
195 /* 0xF2 */ u8 field_0xf2;
196 /* 0xF3 */ u8 field_0xf3;
197 /* 0xF4 */ s8 field_0xf4;
198 /* 0xF5 */ u8 field_0xf5;
199 /* 0xF6 */ u8 field_0xf6;
200 /* 0xF7 */ s8 field_0xf7;
201 /* 0xF8 */ bool field_0xf8;
202 /* 0xF9 */ bool field_0xf9;
203};
204
206public:
207 virtual bool isEnableZoomMove() const;
208 virtual void calcZoomCenter(f32*, f32*);
209 virtual void getInitWholeMapScale(f32*, f32, f32, f32, f32);
210 virtual void getInitDispCenter(f32*, f32*);
211 virtual void getZoomMinMaxCheck(f32*, f32*, f32*, f32*, bool*, bool*);
212 virtual f32 getZoomCmPerPixel();
213 virtual void draw();
214};
215
216#endif /* D_MENU_D_MENU_DMAP_MAP_H */
Definition d_menu_dmap_map.h:205
virtual bool isEnableZoomMove() const
Definition d_menu_dmap_map.cpp:828
virtual void getZoomMinMaxCheck(f32 *, f32 *, f32 *, f32 *, bool *, bool *)
Definition d_menu_dmap_map.cpp:547
virtual void calcZoomCenter(f32 *, f32 *)
Definition d_menu_dmap_map.cpp:623
virtual void draw()
Definition d_menu_dmap_map.cpp:899
virtual void getInitWholeMapScale(f32 *, f32, f32, f32, f32)
Definition d_menu_dmap_map.cpp:994
virtual void getInitDispCenter(f32 *, f32 *)
Definition d_menu_dmap_map.cpp:1011
virtual f32 getZoomCmPerPixel()
Definition d_menu_dmap_map.cpp:643
Definition d_menu_dmap_map.h:7
u8 * mMapImage_p[2]
Definition d_menu_dmap_map.h:20
int field_0x84
Definition d_menu_dmap_map.h:21
ResTIMG * getResTIMGPointer(int i_no) const
Definition d_menu_dmap_map.h:16
virtual ~dMenu_DmapMap_c()
Definition d_menu_dmap_map.h:9
void setTexture(u16, u16, u16, u16)
Definition d_menu_dmap_map.cpp:303
void setPos(int, int, f32, f32, f32, bool, f32)
Definition d_menu_dmap_map.cpp:316
renderingDmap_c mRend[2]
Definition d_menu_dmap_map.h:18
ResTIMG * mResTIMG[2]
Definition d_menu_dmap_map.h:19
void _delete()
Definition d_menu_dmap_map.cpp:291
void _create(u16, u16, u16, u16, void *)
Definition d_menu_dmap_map.cpp:283
const renderingDmap_c * getRendPointer(int i_no) const
Definition d_menu_dmap_map.h:15
Definition d_menu_dmap_map.h:24
void setPlusZoomCenterZ(f32)
Definition d_menu_dmap_map.cpp:990
u8 field_0x88[0x8C - 0x88]
Definition d_menu_dmap_map.h:159
f32 getBlendPer(f32 param_0) const
Definition d_menu_dmap_map.h:145
void cnvPosTo2Dpos(f32, f32, f32 *, f32 *) const
Definition d_menu_dmap_map.cpp:401
f32 getZoomCenterMaxZ()
Definition d_menu_dmap_map.h:132
virtual ~dMenu_StageMapCtrl_c()
Definition d_menu_dmap_map.h:70
f32 getDispCenterX() const
Definition d_menu_dmap_map.h:124
u8 field_0xef
Definition d_menu_dmap_map.h:192
s8 getDispFloorNo() const
Definition d_menu_dmap_map.h:121
f32 field_0xe0
Definition d_menu_dmap_map.h:181
f32 getMapBlendPer() const
Definition d_menu_dmap_map.cpp:322
void zoomOut_proc()
Definition d_menu_dmap_map.cpp:872
f32 field_0xd4
Definition d_menu_dmap_map.h:178
bool getTreasureList(f32 *, f32 *, s8 *, u8 *, s8 *)
Definition d_menu_dmap_map.cpp:364
void zoomWait_init_proc()
Definition d_menu_dmap_map.cpp:820
void zoomWait_proc()
Definition d_menu_dmap_map.cpp:832
f32 field_0xb4
Definition d_menu_dmap_map.h:170
f32 field_0x9c
Definition d_menu_dmap_map.h:164
dTres_c::typeGroupData_c * field_0x8c
Definition d_menu_dmap_map.h:160
f32 getPixelStageSizeZ() const
Definition d_menu_dmap_map.cpp:338
u8 field_0xe9
Definition d_menu_dmap_map.h:186
f32 getPixelCenterX() const
Definition d_menu_dmap_map.cpp:343
ResTIMG * getResTIMGPointer(int i_no) const
Definition d_menu_dmap_map.h:152
f32 field_0xac
Definition d_menu_dmap_map.h:168
f32 getPixelPerCm() const
Definition d_menu_dmap_map.h:135
s8 field_0xf4
Definition d_menu_dmap_map.h:197
int getFloorNo(f32 param_0) const
Definition d_menu_dmap_map.h:141
s8 field_0xec
Definition d_menu_dmap_map.h:189
bool isEnableZoomOut()
Definition d_menu_dmap_map.cpp:982
f32 makeStayFloorBlendPer(int param_0, f32 param_1)
Definition d_menu_dmap_map.h:137
f32 field_0xb8
Definition d_menu_dmap_map.h:171
virtual bool isEnableZoomMove() const =0
s8 field_0xee
Definition d_menu_dmap_map.h:191
u8 field_0xf5
Definition d_menu_dmap_map.h:198
u16 field_0xe4
Definition d_menu_dmap_map.h:182
f32 getStageMapSizeX() const
Definition d_menu_dmap_map.h:127
static f32 m_zoomCenterMaxX
Definition d_menu_dmap_map.h:155
f32 field_0xa4
Definition d_menu_dmap_map.h:166
void setPlusZoomCenterX(f32)
Definition d_menu_dmap_map.cpp:986
f32 field_0xc4
Definition d_menu_dmap_map.h:174
s8 field_0xed
Definition d_menu_dmap_map.h:190
virtual f32 getZoomCmPerPixel()=0
f32 field_0xcc
Definition d_menu_dmap_map.h:176
virtual void getZoomMinMaxCheck(f32 *, f32 *, f32 *, f32 *, bool *, bool *)=0
s8 field_0xf7
Definition d_menu_dmap_map.h:200
f32 field_0xa8
Definition d_menu_dmap_map.h:167
s8 getRestartDrawInfo(f32 *, f32 *, s16 *) const
Definition d_menu_dmap_map.cpp:425
s8 field_0xeb
Definition d_menu_dmap_map.h:188
void zoomIn_init_proc()
Definition d_menu_dmap_map.cpp:542
s8 getDispFloor2No() const
Definition d_menu_dmap_map.h:122
u8 field_0xf1
Definition d_menu_dmap_map.h:194
void zoomIn_proc()
Definition d_menu_dmap_map.cpp:789
void move()
Definition d_menu_dmap_map.cpp:890
u8 getDisableZoomMoveFlgX() const
Definition d_menu_dmap_map.h:115
f32 getPixelCenterZ() const
Definition d_menu_dmap_map.cpp:348
void setPlusNowStayFloorNo(s8, u8)
Definition d_menu_dmap_map.cpp:441
u8 field_0xf0
Definition d_menu_dmap_map.h:193
static f32 m_zoomCenterMinZ
Definition d_menu_dmap_map.h:156
void initZoomIn(u8)
Definition d_menu_dmap_map.cpp:738
f32 field_0xd8
Definition d_menu_dmap_map.h:179
f32 getZoomCenterMinZ()
Definition d_menu_dmap_map.h:133
f32 field_0x94
Definition d_menu_dmap_map.h:162
s8 getNowStayFloorNo() const
Definition d_menu_dmap_map.h:118
u8 field_0xf6
Definition d_menu_dmap_map.h:199
bool isEndZoomOut() const
Definition d_menu_dmap_map.h:150
bool isEndZoomIn() const
Definition d_menu_dmap_map.h:149
u8 getDisableZoomMoveFlgZ() const
Definition d_menu_dmap_map.h:116
bool field_0xf9
Definition d_menu_dmap_map.h:202
void _create(u16, u16, u16, u16, void *)
Definition d_menu_dmap_map.cpp:914
s8 getBottomFloorNo() const
Definition d_menu_dmap_map.h:120
f32 field_0xb0
Definition d_menu_dmap_map.h:169
u8 field_0xf2
Definition d_menu_dmap_map.h:195
s8 field_0xea
Definition d_menu_dmap_map.h:187
void initZoomInCenterHold(u8)
Definition d_menu_dmap_map.cpp:775
virtual void getInitDispCenter(f32 *, f32 *)=0
void wait_proc()
Definition d_menu_dmap_map.cpp:538
void getPlayerDrawInfo(f32 *, f32 *, s16 *) const
Definition d_menu_dmap_map.cpp:412
void zoomCalcSet(f32)
Definition d_menu_dmap_map.cpp:783
f32 field_0xc0
Definition d_menu_dmap_map.h:173
f32 field_0xd0
Definition d_menu_dmap_map.h:177
f32 getStageMapSizeZ() const
Definition d_menu_dmap_map.h:128
s8 field_0xe6
Definition d_menu_dmap_map.h:183
void initZoomWait(f32, f32)
Definition d_menu_dmap_map.cpp:807
s8 field_0xe8
Definition d_menu_dmap_map.h:185
f32 field_0xbc
Definition d_menu_dmap_map.h:172
void wait_init_proc()
Definition d_menu_dmap_map.cpp:533
static f32 m_zoomCenterMinX
Definition d_menu_dmap_map.h:154
void draw()
Definition d_menu_dmap_map.h:77
f32 field_0xc8
Definition d_menu_dmap_map.h:175
void initGetTreasureList(u8, s8)
Definition d_menu_dmap_map.cpp:353
f32 field_0x90
Definition d_menu_dmap_map.h:161
void _delete()
Definition d_menu_dmap_map.cpp:969
f32 field_0xdc
Definition d_menu_dmap_map.h:180
f32 getZoomCenterMinX()
Definition d_menu_dmap_map.h:131
s8 field_0xe7
Definition d_menu_dmap_map.h:184
dMenu_StageMapCtrl_c()
Definition d_menu_dmap_map.h:26
virtual void calcZoomCenter(f32 *, f32 *)=0
s8 getPlayerStayFloorNo() const
Definition d_menu_dmap_map.cpp:905
f32 getZoomCenterMaxX()
Definition d_menu_dmap_map.h:130
s8 getTopFloorNo() const
Definition d_menu_dmap_map.h:119
static f32 m_zoomCenterMaxZ
Definition d_menu_dmap_map.h:157
void initZoomOut(u8)
Definition d_menu_dmap_map.cpp:800
u8 field_0xf3
Definition d_menu_dmap_map.h:196
f32 getPixelStageSizeX() const
Definition d_menu_dmap_map.cpp:333
virtual void getInitWholeMapScale(f32 *, f32, f32, f32, f32)=0
f32 getDispCenterZ() const
Definition d_menu_dmap_map.h:125
bool field_0xf8
Definition d_menu_dmap_map.h:201
void moveFloor()
Definition d_menu_dmap_map.cpp:446
bool isEnableZoomIn()
Definition d_menu_dmap_map.cpp:973
f32 field_0x98
Definition d_menu_dmap_map.h:163
f32 field_0xa0
Definition d_menu_dmap_map.h:165
void zoomOut_init_proc()
Definition d_menu_dmap_map.cpp:867
static f32 getSizeX()
Definition d_map_path_dmap.h:30
static f32 getSizeZ()
Definition d_map_path_dmap.h:31
Definition d_tresure.h:20
Definition d_menu_dmap.h:25
signed char s8
Definition types.h:7
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
float ceil(float num)
Definition cmath.h:30
float fmod(float x, float y)
Definition cmath.h:26
Image data header.
Definition JUTTexture.h:18