706
|
1 #include <assert.h>
|
|
2
|
|
3 #include "MM7.h"
|
|
4
|
|
5 #include "MapInfo.h"
|
|
6 #include "Game.h"
|
|
7 #include "GUIWindow.h"
|
|
8 #include "GUIFont.h"
|
|
9 #include "GUIProgressBar.h"
|
|
10 #include "Party.h"
|
|
11 #include "AudioPlayer.h"
|
|
12 #include "Outdoor.h"
|
|
13 #include "IndoorCamera.h"
|
|
14 #include "Overlays.h"
|
|
15 #include "Monsters.h"
|
|
16 #include "Arcomage.h"
|
|
17 #include "LOD.h"
|
|
18 #include "Actor.h"
|
|
19 #include "Allocator.h"
|
|
20 #include "Events.h"
|
|
21 #include "Viewport.h"
|
|
22 #include "FrameTableInc.h"
|
|
23 #include "Math.h"
|
|
24 #include "SpriteObject.h"
|
|
25 #include "ObjectList.h"
|
|
26 #include "Chest.h"
|
|
27 #include "PaletteManager.h"
|
|
28 #include "DecorationList.h"
|
|
29 #include "SaveLoad.h"
|
|
30 #include "stru123.h"
|
|
31 #include "Time.h"
|
|
32 #include "IconFrameTable.h"
|
|
33 #include "Awards.h"
|
|
34 #include "Autonotes.h"
|
|
35 #include "stru160.h"
|
|
36 #include "TurnEngine.h"
|
924
|
37 #include "CastSpellInfo.h"
|
706
|
38 #include "Weather.h"
|
|
39 #include "stru298.h"
|
|
40 #include "StorylineTextTable.h"
|
|
41 #include "Events2D.h"
|
|
42 #include "texts.h"
|
|
43
|
|
44 #include "mm7_data.h"
|
|
45
|
|
46
|
|
47
|
|
48 //----- (004142D3) --------------------------------------------------------
|
|
49 char __cdecl GameMenuUI_DrawKeyBindings()
|
|
50 {
|
|
51 unsigned int v0; // ebp@1
|
|
52 int v1; // ecx@2
|
|
53 unsigned int v2; // eax@6
|
|
54 GUIWindow *v3; // edx@6
|
|
55 signed int v4; // ecx@7
|
|
56 signed int v5; // eax@8
|
|
57 const char *v6; // ST0C_4@16
|
|
58 unsigned int v7; // eax@16
|
|
59 const char *v8; // ST0C_4@16
|
|
60 unsigned int v9; // eax@16
|
|
61 const char *v10; // ST0C_4@16
|
|
62 unsigned int v11; // eax@16
|
|
63 const char *v12; // ST0C_4@16
|
|
64 unsigned int v13; // eax@16
|
|
65 const char *v14; // ST0C_4@16
|
|
66 unsigned int v15; // eax@16
|
|
67 const char *v16; // ST0C_4@16
|
|
68 unsigned int v17; // eax@16
|
|
69 const char *v18; // ST0C_4@16
|
|
70 unsigned int v19; // eax@16
|
|
71 const char *v20; // ST0C_4@16
|
|
72 unsigned int v21; // eax@16
|
|
73 signed int v22; // ebp@16
|
|
74 const char *v23; // ST0C_4@16
|
|
75 unsigned int v24; // eax@16
|
|
76 const char *v25; // ST0C_4@16
|
|
77 unsigned int v26; // eax@16
|
|
78 const char *v27; // ST0C_4@16
|
|
79 unsigned int v28; // eax@16
|
|
80 const char *v29; // ST0C_4@16
|
|
81 unsigned int v30; // eax@16
|
|
82 const char *v31; // ST0C_4@16
|
|
83 unsigned int v32; // eax@16
|
|
84 const char *v33; // ST0C_4@17
|
|
85 unsigned int v34; // eax@17
|
|
86 const char *v35; // ST0C_4@17
|
|
87 unsigned int v36; // eax@17
|
|
88 const char *v37; // ST0C_4@17
|
|
89 unsigned int v38; // eax@17
|
|
90 const char *v39; // ST0C_4@17
|
|
91 unsigned int v40; // eax@17
|
|
92 const char *v41; // ST0C_4@17
|
|
93 unsigned int v42; // eax@17
|
|
94 const char *v43; // ST0C_4@17
|
|
95 unsigned int v44; // eax@17
|
|
96 const char *v45; // ST0C_4@17
|
|
97 unsigned int v46; // eax@17
|
|
98 const char *v47; // ST0C_4@17
|
|
99 unsigned int v48; // eax@17
|
|
100 const char *v49; // ST0C_4@17
|
|
101 unsigned int v50; // eax@17
|
|
102 const char *v51; // ST0C_4@17
|
|
103 unsigned int v52; // eax@17
|
|
104 const char *v53; // ST0C_4@17
|
|
105 unsigned int v54; // eax@17
|
|
106 const char *v55; // ST0C_4@17
|
|
107 unsigned int v56; // eax@17
|
|
108 const char *v57; // ST0C_4@17
|
|
109 unsigned int v58; // eax@17
|
|
110 unsigned int v59; // eax@18
|
|
111 int v61; // [sp-14h] [bp-28h]@16
|
|
112 const char *v62; // [sp-10h] [bp-24h]@16
|
|
113 int v63; // [sp-Ch] [bp-20h]@16
|
|
114 int v64; // [sp-8h] [bp-1Ch]@16
|
|
115 unsigned int v65; // [sp-4h] [bp-18h]@16
|
|
116 unsigned int a5; // [sp+10h] [bp-4h]@1
|
|
117
|
|
118 v0 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFFu, 0xFFu, 0xFFu);
|
|
119 a5 = v0;
|
|
120 if ( byte_4E28FC )
|
|
121 {
|
|
122 v1 = dword_507C0C + 15;
|
|
123 dword_507C0C = v1;
|
|
124 if ( v1 == 255 )
|
|
125 byte_4E28FC = 0;
|
|
126 }
|
|
127 else
|
|
128 {
|
|
129 v1 = dword_507C0C - 15;
|
|
130 dword_507C0C = v1;
|
|
131 if ( v1 == 15 )
|
|
132 byte_4E28FC = 1;
|
|
133 }
|
|
134 v2 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(v1, 0, 0);
|
|
135 v3 = pGUIWindow_CurrentMenu;
|
|
136 dword_507C08 = v2;
|
|
137 if ( pGUIWindow_CurrentMenu->field_40 == 2 )
|
|
138 {
|
|
139 pPrevVirtualCidesMapping[dword_506E68] = pKeyActionMap->pPressedKeysBuffer[0];
|
|
140 memset(&KeyButtonFlagChangesArray, 0, sizeof(KeyButtonFlagChangesArray));
|
|
141 v4 = 0;
|
|
142 do
|
|
143 {
|
|
144 v5 = 0;
|
|
145 do
|
|
146 {
|
|
147 if ( v4 != v5 && pPrevVirtualCidesMapping[v4] == pPrevVirtualCidesMapping[v5] )
|
|
148 {
|
|
149 KeyButtonFlagChangesArray[v4] = 1;
|
|
150 KeyButtonFlagChangesArray[v5] = 1;
|
|
151 }
|
|
152 ++v5;
|
|
153 }
|
|
154 while ( v5 < 28 );
|
|
155 ++v4;
|
|
156 }
|
|
157 while ( v4 < 28 );
|
|
158 dword_506E68 = -1;
|
|
159 v3->field_40 = 0;
|
|
160 }
|
|
161 pRenderer->DrawTextureIndexed(8, 8, (Texture *)(uTextureID_Optkb[0] != -1 ? &pIcons_LOD->pTextures[uTextureID_Optkb[0]] : 0));
|
|
162 if ( KeyboardPageNum == 1 )
|
|
163 {
|
|
164 pRenderer->DrawTextureIndexed(0x13, 0x12E, (Texture *)(uTextureID_Optkb[3] != -1 ? &pIcons_LOD->pTextures[uTextureID_Optkb[3]] : 0));
|
|
165 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 142, v0, ascii_4E2D5C, 0, 0, 0);
|
|
166 v6 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[0]);
|
|
167 v7 = sub_414D24(0);
|
|
168 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 142, v7, v6, 0, 0, 0);
|
|
169 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 163, v0, ascii_4E2D50, 0, 0, 0);
|
|
170 v8 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[1]);
|
|
171 v9 = sub_414D24(1);
|
|
172 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 163, v9, v8, 0, 0, 0);
|
|
173 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 184, v0, ascii_4E2D48, 0, 0, 0);
|
|
174 v10 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[2]);
|
|
175 v11 = sub_414D24(2);
|
|
176 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 184, v11, v10, 0, 0, 0);
|
|
177 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 205, v0, ascii_4E2D40, 0, 0, 0);
|
|
178 v12 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[3]);
|
|
179 v13 = sub_414D24(3);
|
|
180 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 205, v13, v12, 0, 0, 0);
|
|
181 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 226, v0, ascii_4E2D38, 0, 0, 0);
|
|
182 v14 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[4]);
|
|
183 v15 = sub_414D24(4);
|
|
184 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 226, v15, v14, 0, 0, 0);
|
|
185 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 247, v0, ascii_4E2D30, 0, 0, 0);
|
|
186 v16 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[5]);
|
|
187 v17 = sub_414D24(5);
|
|
188 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 247, v17, v16, 0, 0, 0);
|
|
189 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 268, v0, ascii_4E2D28, 0, 0, 0);
|
|
190 v18 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[6]);
|
|
191 v19 = sub_414D24(6);
|
|
192 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 268, v19, v18, 0, 0, 0);
|
|
193 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 142, v0, ascii_4E2D1C, 0, 0, 0);
|
|
194 v20 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[7]);
|
|
195 v21 = sub_414D24(7);
|
|
196 v22 = 350;
|
|
197 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 142, v21, v20, 0, 0, 0);
|
|
198 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 163, a5, ascii_4E2D14, 0, 0, 0);
|
|
199 v23 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[8]);
|
|
200 v24 = sub_414D24(8);
|
|
201 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 163, v24, v23, 0, 0, 0);
|
|
202 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 184, a5, ascii_4E2D0C, 0, 0, 0);
|
|
203 v25 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[9]);
|
|
204 v26 = sub_414D24(9);
|
|
205 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 184, v26, v25, 0, 0, 0);
|
|
206 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 205, a5, ascii_4E2D04, 0, 0, 0);
|
|
207 v27 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[10]);
|
|
208 v28 = sub_414D24(10);
|
|
209 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 205, v28, v27, 0, 0, 0);
|
|
210 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 226, a5, ascii_4E2CFC, 0, 0, 0);
|
|
211 v29 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[11]);
|
|
212 v30 = sub_414D24(11);
|
|
213 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 226, v30, v29, 0, 0, 0);
|
|
214 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 247, a5, ascii_4E2CF0, 0, 0, 0);
|
|
215 v31 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[12]);
|
|
216 v32 = sub_414D24(12);
|
|
217 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 247, v32, v31, 0, 0, 0);
|
|
218 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 268, a5, ascii_4E2CE8, 0, 0, 0);
|
|
219 v65 = 0;
|
|
220 v64 = 0;
|
|
221 v63 = 0;
|
|
222 v62 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[13]);
|
|
223 v61 = 13;
|
|
224 }
|
|
225 else
|
|
226 {
|
|
227 pRenderer->DrawTextureIndexed(0x7F, 0x12E, (Texture *)(uTextureID_Optkb[4] != -1 ? &pIcons_LOD->pTextures[uTextureID_Optkb[4]] : 0));
|
|
228 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 142, v0, ascii_4E2CDC, 0, 0, 0);
|
|
229 v33 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[14]);
|
|
230 v34 = sub_414D24(14);
|
|
231 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 142, v34, v33, 0, 0, 0);
|
|
232 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 163, v0, ascii_4E2CD4, 0, 0, 0);
|
|
233 v35 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[15]);
|
|
234 v36 = sub_414D24(15);
|
|
235 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 163, v36, v35, 0, 0, 0);
|
|
236 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 184, v0, ascii_4E2CC8, 0, 0, 0);
|
|
237 v37 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[16]);
|
|
238 v38 = sub_414D24(16);
|
|
239 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 184, v38, v37, 0, 0, 0);
|
|
240 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 205, v0, ascii_4E2CBC, 0, 0, 0);
|
|
241 v39 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[17]);
|
|
242 v40 = sub_414D24(17);
|
|
243 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 205, v40, v39, 0, 0, 0);
|
|
244 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 226, v0, ascii_4E2CB0, 0, 0, 0);
|
|
245 v41 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[18]);
|
|
246 v42 = sub_414D24(18);
|
|
247 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 226, v42, v41, 0, 0, 0);
|
|
248 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 247, v0, ascii_4E2CA4, 0, 0, 0);
|
|
249 v43 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[19]);
|
|
250 v44 = sub_414D24(19);
|
|
251 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 247, v44, v43, 0, 0, 0);
|
|
252 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 23, 268, v0, ascii_4E2C9C, 0, 0, 0);
|
|
253 v45 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[20]);
|
|
254 v46 = sub_414D24(20);
|
|
255 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 127, 268, v46, v45, 0, 0, 0);
|
|
256 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 142, v0, ascii_4E2C90, 0, 0, 0);
|
|
257 v47 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[21]);
|
|
258 v48 = sub_414D24(21);
|
|
259 v22 = 350;
|
|
260 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 142, v48, v47, 0, 0, 0);
|
|
261 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 163, a5, ascii_4E2C84, 0, 0, 0);
|
|
262 v49 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[22]);
|
|
263 v50 = sub_414D24(22);
|
|
264 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 163, v50, v49, 0, 0, 0);
|
|
265 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 184, a5, ascii_4E2C7C, 0, 0, 0);
|
|
266 v51 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[23]);
|
|
267 v52 = sub_414D24(23);
|
|
268 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 184, v52, v51, 0, 0, 0);
|
|
269 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 205, a5, ascii_4E2C70, 0, 0, 0);
|
|
270 v53 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[24]);
|
|
271 v54 = sub_414D24(24);
|
|
272 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 205, v54, v53, 0, 0, 0);
|
|
273 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 226, a5, ascii_4E2C68, 0, 0, 0);
|
|
274 v55 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[25]);
|
|
275 v56 = sub_414D24(25);
|
|
276 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 226, v56, v55, 0, 0, 0);
|
|
277 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 247, a5, ascii_4E2C5C, 0, 0, 0);
|
|
278 v57 = pKeyActionMap->GetVKeyDisplayName(pPrevVirtualCidesMapping[26]);
|
|
279 v58 = sub_414D24(26);
|
|
280 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 350, 247, v58, v57, 0, 0, 0);
|
|
281 pGUIWindow_CurrentMenu->DrawText(pFontLucida, 247, 268, a5, ascii_4E2C54, 0, 0, 0);
|
|
282 v65 = 0;
|
|
283 v64 = 0;
|
|
284 v63 = 0;
|
|
285 v62 = pKeyActionMap->GetVKeyDisplayName(pWindowList_at_506F50_minus1_indexing[0]);
|
|
286 v61 = 27;
|
|
287 }
|
|
288 v59 = sub_414D24(v61);
|
|
289 return pGUIWindow_CurrentMenu->DrawText(pFontLucida, v22, 268, v59, v62, v63, v64, v65);
|
|
290 }
|
|
291
|
|
292
|
|
293 //----- (00414D24) --------------------------------------------------------
|
|
294 unsigned int __thiscall sub_414D24(int _this)
|
|
295 {
|
|
296 int v1; // esi@1
|
|
297 unsigned int v2; // edi@1
|
|
298 unsigned int v3; // ebx@1
|
|
299 unsigned int result; // eax@1
|
|
300
|
|
301 v1 = _this;
|
|
302 v2 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xE1u, 0xCDu, 0x23u);
|
|
303 v3 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFu, 0, 0);
|
|
304 result = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFFu, 0xFFu, 0xFFu);
|
|
305 if ( dword_506E68 == v1 )
|
|
306 {
|
|
307 if ( GetTickCount() % 0x3E8 <= 0x1F4 )
|
|
308 result = v3;
|
|
309 else
|
|
310 result = v2;
|
|
311 }
|
|
312 else
|
|
313 {
|
|
314 if ( KeyButtonFlagChangesArray[v1] )
|
|
315 result = dword_507C08;
|
|
316 }
|
|
317 return result;
|
|
318 }
|
|
319 // 506E68: using guessed type int dword_506E68;
|
|
320 // 506E6C: using guessed type __int16 word_506E6C[18];
|
|
321 // 507C08: using guessed type int dword_507C08;
|
|
322
|
|
323 //----- (00414D9A) --------------------------------------------------------
|
|
324 void __cdecl GameMenuUI_DrawVideoOptions()
|
|
325 {
|
|
326 const char *v0; // ST0C_4@3
|
|
327 unsigned __int16 v1; // ax@3
|
|
328 int v2; // eax@10
|
|
329 GUIWindow v3; // [sp+8h] [bp-54h]@3
|
|
330
|
|
331 pRenderer->DrawTextureIndexed(
|
|
332 8u,
|
|
333 8u,
|
|
334 (Texture *)(uTextureID_507C10 != -1 ? &pIcons_LOD->pTextures[uTextureID_507C10] : 0));
|
|
335 if ( !pRenderer->bWindowMode && GammaController::IsGammaSupported() )
|
|
336 {
|
|
337 pRenderer->DrawTextureIndexed(
|
|
338 17 * uGammaPos + 42,
|
|
339 162u,
|
|
340 (Texture *)(pTextureIDs_GammaPositions[uGammaPos] != -1 ? &pIcons_LOD->pTextures[pTextureIDs_GammaPositions[uGammaPos]] : 0));
|
|
341 pRenderer->DrawTextureRGB(0x112u, 0xA9u, &stru_506E40);
|
|
342 v3.uFrameX = 22;
|
|
343 v0 = pGlobalTXT_LocalizationStrings[226];
|
|
344 v3.uFrameY = 190;
|
|
345 v3.uFrameWidth = 211;
|
|
346 v3.uFrameHeight = 79;
|
|
347 v3.uFrameZ = 232;
|
|
348 v3.uFrameW = 268;
|
|
349 v1 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFFu, 0xFFu, 0x9Bu);
|
|
350 v3.DrawTitleText(pFontSmallnum, 0, 0, v1, v0, 3u);
|
|
351 }
|
|
352 if ( !pRenderer->pRenderD3D )
|
|
353 {
|
|
354 pRenderer->DrawTextureIndexed(
|
|
355 0x14u,
|
|
356 0x119u,
|
|
357 (Texture *)(uTextureID_507C50 != -1 ? &pIcons_LOD->pTextures[uTextureID_507C50] : 0));
|
|
358 pRenderer->DrawTextureIndexed(
|
|
359 0x14u,
|
|
360 0x12Fu,
|
|
361 (Texture *)(uTextureID_507C54 != -1 ? &pIcons_LOD->pTextures[uTextureID_507C54] : 0));
|
|
362 v2 = uTextureID_507C58;
|
|
363 goto LABEL_12;
|
|
364 }
|
|
365 if ( pGame->uFlags2 & GAME_FLAGS_2_DRAW_BLOODSPLATS )
|
|
366 pRenderer->DrawTextureIndexed(
|
|
367 0x14u,
|
|
368 0x119u,
|
|
369 (Texture *)(uTextureID_507C14 != -1 ? &pIcons_LOD->pTextures[uTextureID_507C14] : 0));
|
|
370 if ( pRenderer->bUseColoredLights )
|
|
371 pRenderer->DrawTextureIndexed(
|
|
372 0x14u,
|
|
373 0x12Fu,
|
|
374 (Texture *)(uTextureID_507C18 != -1 ? &pIcons_LOD->pTextures[uTextureID_507C18] : 0));
|
|
375 if ( pRenderer->bTinting )
|
|
376 {
|
|
377 v2 = uTextureID_507C1C;
|
|
378 LABEL_12:
|
|
379 pRenderer->DrawTextureIndexed(0x14u, 0x145u, (Texture *)(v2 != -1 ? &pIcons_LOD->pTextures[v2] : 0));
|
|
380 }
|
|
381 }
|
|
382
|
|
383
|
|
384
|
|
385 //----- (00414F82) --------------------------------------------------------
|
|
386 void __cdecl DrawGameOptions()
|
|
387 {
|
|
388 signed int v0; // eax@1
|
|
389
|
|
390 pRenderer->DrawTextureIndexed(8, 8, (Texture *)(uTextureID_Options != -1 ? &pIcons_LOD->pTextures[uTextureID_Options] : 0));
|
|
391 pRenderer->DrawTextureIndexed(8, 132, (Texture *)(uTextureID_ControlBG[0] != -1 ? &pIcons_LOD->pTextures[uTextureID_ControlBG[0]] : 0));
|
|
392 v0 = 0;
|
|
393 if ( uTurnSpeed == 128 )
|
|
394 {
|
|
395 v0 = 2;
|
|
396 }
|
|
397 else
|
|
398 {
|
|
399 if ( uTurnSpeed == 64 )
|
|
400 v0 = 1;
|
|
401 }
|
|
402 pRenderer->DrawTextureIndexed(BtnTurnCoord[v0], 270, (Texture *)(uTextureID_ControlBG[v0 + 1] != -1 ? &pIcons_LOD->pTextures[uTextureID_ControlBG[v0 + 1]] : 0));
|
|
403 if ( bWalkSound )
|
|
404 pRenderer->DrawTextureIndexed(20, 303, (Texture *)(uTextureID_ControlBG[21] != -1 ? &pIcons_LOD->pTextures[uTextureID_ControlBG[21]] : 0));
|
|
405 if ( bShowDamage )
|
|
406 pRenderer->DrawTextureIndexed(128, 303, (Texture *)(uTextureID_ControlBG[22] != -1 ? &pIcons_LOD->pTextures[uTextureID_ControlBG[22]] : 0));
|
|
407 if ( bFlipOnExit )
|
|
408 pRenderer->DrawTextureIndexed(128, 325, (Texture *)(uTextureID_ControlBG[9] != -1 ? &pIcons_LOD->pTextures[uTextureID_ControlBG[9]] : 0));
|
|
409 if ( bAlwaysRun )
|
|
410 pRenderer->DrawTextureIndexed(20, 325, (Texture *)(uTextureID_ControlBG[20] != -1 ? &pIcons_LOD->pTextures[uTextureID_ControlBG[20]] : 0));
|
|
411 pRenderer->DrawTextureIndexed(17 * (char)uSoundVolumeMultiplier + 265, 162,
|
|
412 (Texture *)(uTextureID_ControlBG[(char)uSoundVolumeMultiplier + 10] != -1 ? &pIcons_LOD->pTextures[uTextureID_ControlBG[(char)uSoundVolumeMultiplier + 10]] : 0));
|
|
413 pRenderer->DrawTextureIndexed(17 * (char)uMusicVolimeMultiplier + 265, 216,
|
|
414 (Texture *)(uTextureID_ControlBG[(char)uMusicVolimeMultiplier + 10] != -1 ? &pIcons_LOD->pTextures[uTextureID_ControlBG[(char)uMusicVolimeMultiplier + 10]] : 0));
|
|
415 pRenderer->DrawTextureIndexed(17 * (char)uVoicesVolumeMultiplier + 265, 270,
|
|
416 (Texture *)(uTextureID_ControlBG[(char)uVoicesVolumeMultiplier + 10] != -1 ? &pIcons_LOD->pTextures[uTextureID_ControlBG[(char)uVoicesVolumeMultiplier + 10]] : 0));
|
|
417 } |