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