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