comparison mm7_5.cpp @ 17:fe0d9a98213f

17.01.13 (fix Hint error)
author Ritor1
date Thu, 17 Jan 2013 16:24:25 +0600
parents b4982f23d2e9
children d5954a85577a
comparison
equal deleted inserted replaced
16:e1afcd54fddd 17:fe0d9a98213f
13550 } 13550 }
13551 // 506408: using guessed type int dword_506408[]; 13551 // 506408: using guessed type int dword_506408[];
13552 // 50654C: using guessed type int dword_50654C; 13552 // 50654C: using guessed type int dword_50654C;
13553 13553
13554 //----- (00412E85) -------------------------------------------------------- 13554 //----- (00412E85) --------------------------------------------------------
13555 char __cdecl sub_412E85() 13555 char __cdecl DrawBook_History()
13556 { 13556 {
13557 unsigned int v0; // eax@3 13557 unsigned int v0; // eax@3
13558 unsigned int v1; // eax@7 13558 unsigned int v1; // eax@7
13559 int v2; // eax@10 13559 int v2; // eax@10
13560 const char *v3; // eax@10 13560 const char *v3; // eax@10
13657 return (char)v8; 13657 return (char)v8;
13658 } 13658 }
13659 13659
13660 13660
13661 //----- (00413126) -------------------------------------------------------- 13661 //----- (00413126) --------------------------------------------------------
13662 void __cdecl DrawSpellbook_Quests() 13662 void __cdecl DrawBook_Quests()
13663 { 13663 {
13664 unsigned int v0; // eax@3 13664 unsigned int v0; // eax@3
13665 unsigned int v1; // eax@7 13665 unsigned int v1; // eax@7
13666 int v2; // ecx@11 13666 int v2; // ecx@11
13667 int v3; // ebx@16 13667 int v3; // ebx@16
13753 } 13753 }
13754 } 13754 }
13755 13755
13756 13756
13757 //----- (0041338E) -------------------------------------------------------- 13757 //----- (0041338E) --------------------------------------------------------
13758 void __cdecl DrawSpellbook_Autonotes() 13758 void __cdecl DrawBook_Autonotes()
13759 { 13759 {
13760 unsigned int v0; // eax@3 13760 unsigned int v0; // eax@3
13761 unsigned int v1; // eax@7 13761 unsigned int v1; // eax@7
13762 signed int v2; // ebp@11 13762 signed int v2; // ebp@11
13763 unsigned int v3; // eax@18 13763 unsigned int v3; // eax@18
14056 } 14056 }
14057 } 14057 }
14058 14058
14059 14059
14060 //----- (00413980) -------------------------------------------------------- 14060 //----- (00413980) --------------------------------------------------------
14061 char *__cdecl DrawSpellbook_Map() 14061 char *__cdecl DrawBook_Maps()
14062 { 14062 {
14063 unsigned int v0; // eax@3 14063 unsigned int v0; // eax@3
14064 unsigned int v1; // eax@7 14064 unsigned int v1; // eax@7
14065 unsigned int v2; // eax@10 14065 unsigned int v2; // eax@10
14066 unsigned int v3; // eax@13 14066 unsigned int v3; // eax@13
14202 return v22.DrawTitleText(pFontComic, 0, 0x140u, 0, Str, 0); 14202 return v22.DrawTitleText(pFontComic, 0, 0x140u, 0, Str, 0);
14203 } 14203 }
14204 14204
14205 14205
14206 //----- (00413CC6) -------------------------------------------------------- 14206 //----- (00413CC6) --------------------------------------------------------
14207 void __thiscall DrawSpellbook(unsigned int uBook) 14207 void __thiscall SellectDrawBook(unsigned int uBook)
14208 { 14208 {
14209 unsigned int v1; // esi@1 14209 enum WindowType pWindowType; // esi@1
14210 14210
14211 v1 = uBook; 14211 pWindowType = (enum WindowType)uBook;
14212 pRenderer->DrawTextureIndexed( 14212 pRenderer->DrawTextureIndexed(471u, 445u, (Texture *)(uTextureID_506438 != -1 ? (int)&pIcons_LOD->pTextures[uTextureID_506438] : 0));
14213 471u, 14213 switch ( pWindowType )
14214 445u, 14214 {
14215 (Texture *)(uTextureID_506438 != -1 ? (int)&pIcons_LOD->pTextures[uTextureID_506438] : 0)); 14215 case WINDOW_Lloyd: // 177
14216 switch ( v1 )
14217 {
14218 case 0xB1u:
14219 DrawLloydBeaconsScreen(); 14216 DrawLloydBeaconsScreen();
14220 break; 14217 break;
14221 case 0xC3u: 14218 case WINDOW_TownPortal: //195
14222 DrawTownPortalScreen(); 14219 DrawTownPortalScreen();
14223 break; 14220 break;
14224 case 0xC8u: 14221 case WINDOW_QuestBook: //200
14225 DrawSpellbook_Quests(); 14222 DrawBook_Quests();
14226 break; 14223 break;
14227 case 0xC9u: 14224 case WINDOW_AutonotesBook: //201
14228 DrawSpellbook_Autonotes(); 14225 DrawBook_Autonotes();
14229 break; 14226 break;
14230 case 0xCAu: 14227 case WINDOW_MapsBook://202
14231 DrawSpellbook_Map(); 14228 DrawBook_Maps();
14232 break; 14229 break;
14233 case 0xCBu: 14230 case WINDOW_CalendarBook://203
14234 DrawSpellbook_Calendar(); 14231 DrawBook_Calendar();
14235 break; 14232 break;
14236 case 0xE0u: 14233 case WINDOW_HistoryBook://224
14237 sub_412E85(); 14234 DrawBook_History();
14238 break; 14235 break;
14239 } 14236 }
14240 } 14237 }
14241 14238
14242 //----- (00413D3C) -------------------------------------------------------- 14239 //----- (00413D3C) --------------------------------------------------------
14253 } 14250 }
14254 return pGlobalTXT_LocalizationStrings[567]; 14251 return pGlobalTXT_LocalizationStrings[567];
14255 } 14252 }
14256 14253
14257 //----- (00413D6F) -------------------------------------------------------- 14254 //----- (00413D6F) --------------------------------------------------------
14258 char __cdecl DrawSpellbook_Calendar() 14255 char __cdecl DrawBook_Calendar()
14259 { 14256 {
14260 unsigned int v0; // esi@1 14257 unsigned int v0; // esi@1
14261 char *v1; // eax@5 14258 char *v1; // eax@5
14262 int v2; // ecx@5 14259 int v2; // ecx@5
14263 char *v3; // eax@6 14260 char *v3; // eax@6
15006 15003
15007 15004
15008 15005
15009 15006
15010 //----- (004156F0) -------------------------------------------------------- 15007 //----- (004156F0) --------------------------------------------------------
15011 void __cdecl GUI_UpdateWindows() 15008 void __cdecl GUI_UpdateWindows() // Нужно всё преобразовать в кейсы
15012 { 15009 {
15013 GUIWindow *pWindow; // esi@4 15010 GUIWindow *pWindow; // esi@4
15014 unsigned int pWindowType; // eax@4 15011 unsigned int pWindowType; // eax@4
15015 int v2; // eax@10 15012 int v2; // eax@10
15016 int v3; // eax@11 15013 int v3; // eax@11
15141 else//pWindowType == 105 (0x69) WINDOW_KeyMappingOptions 15138 else//pWindowType == 105 (0x69) WINDOW_KeyMappingOptions
15142 { 15139 {
15143 GameMenuUI_DrawKeyBindings(); 15140 GameMenuUI_DrawKeyBindings();
15144 } 15141 }
15145 } 15142 }
15146 else//pWindowType == 103 15143 else//pWindowType == 103 (0x67) WINDOW_67
15147 { 15144 {
15148 pWindow->DrawMessageBox(0); 15145 pWindow->DrawMessageBox(0);
15149 pWindow->DrawText(pFontLucida, 10, 20, 0, "Making item number", 0, 0, 0); 15146 pWindow->DrawText(pFontLucida, 10, 20, 0, "Making item number", 0, 0, 0);
15150 pWindow->DrawText(pFontLucida, 10, 40, 0, (const char *)pKeyActionMap->pPressedKeysBuffer, 0, 0, 0); 15147 pWindow->DrawText(pFontLucida, 10, 40, 0, (const char *)pKeyActionMap->pPressedKeysBuffer, 0, 0, 0);
15151 if ( !pKeyActionMap->field_204 ) 15148 if ( !pKeyActionMap->field_204 )
15163 } 15160 }
15164 } 15161 }
15165 } 15162 }
15166 continue; 15163 continue;
15167 } 15164 }
15168 pTexture = (Texture *)*((_DWORD *)pWindow->ptr_1C + 15);//pWindowType == 99 15165 pTexture = (Texture *)*((_DWORD *)pWindow->ptr_1C + 15);//pWindowType == 99 (0x63) WINDOW_63
15169 pY = pWindow->uFrameY; 15166 pY = pWindow->uFrameY;
15170 pX = pWindow->uFrameX; 15167 pX = pWindow->uFrameX;
15171 //LABEL_18: 15168 //LABEL_18:
15172 pRenderer->DrawTextureIndexed(pX, pY, pTexture); 15169 pRenderer->DrawTextureIndexed(pX, pY, pTexture);
15173 //LABEL_114: 15170 //LABEL_114:
15174 viewparams->bRedrawGameUI = 1; 15171 viewparams->bRedrawGameUI = 1;
15175 continue; 15172 continue;
15176 } 15173 }
15177 memset(&GUIButton2, 0, 0xBCu);//pWindowType == 98 15174 memset(&GUIButton2, 0, 0xBCu);//pWindowType == 98 (0x62) WINDOW_RestWindow
15178 GUIButton2.uZ = 197; 15175 GUIButton2.uZ = 197;
15179 GUIButton2.uW = 197; 15176 GUIButton2.uW = 197;
15180 GUIButton2.uX = 27; 15177 GUIButton2.uX = 27;
15181 GUIButton2.uY = 161; 15178 GUIButton2.uY = 161;
15182 GUIButton2.uWidth = 171; 15179 GUIButton2.uWidth = 171;
15191 pGUIWindow2 = pWindow; 15188 pGUIWindow2 = pWindow;
15192 //goto LABEL_110; 15189 //goto LABEL_110;
15193 pGUIWindow2->Release(); 15190 pGUIWindow2->Release();
15194 continue; 15191 continue;
15195 } 15192 }
15196 if ( pWindow->Hint != (char *)1 )//pWindowType == 97 15193 if ( pWindow->Hint != (char *)1 )//pWindowType == 97 (0x61) WINDOW_61
15197 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0); 15194 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0);
15198 v32 = pWindow->ptr_1C; 15195 v32 = pWindow->ptr_1C;
15199 pRenderer->DrawTextureIndexed(pWindow->uFrameX, pWindow->uFrameY, *((Texture **)v32 + 16)); 15196 pRenderer->DrawTextureIndexed(pWindow->uFrameX, pWindow->uFrameY, *((Texture **)v32 + 16));
15200 //goto LABEL_138; 15197 //goto LABEL_138;
15201 pHint = pWindow->Hint; 15198 pHint = pWindow->Hint;
15242 } 15239 }
15243 v14 = pWindowType - 80; 15240 v14 = pWindowType - 80;
15244 if ( v14 )//pWindowType > 80 15241 if ( v14 )//pWindowType > 80
15245 { 15242 {
15246 v15 = v14 - 9; 15243 v15 = v14 - 9;
15247 if ( !v15 )//pWindowType == 89 15244 if ( !v15 )//pWindowType == 89 (0x59) WINDOW_59
15248 { 15245 {
15249 pWindow->DrawMessageBox(0); 15246 pWindow->DrawMessageBox(0);
15250 pWindow->DrawText(pFontLucida, 10, 20, 0, "Making item number", 0, 0, 0); 15247 pWindow->DrawText(pFontLucida, 10, 20, 0, "Making item number", 0, 0, 0);
15251 pWindow->DrawText(pFontLucida, 10, 40, 0, (const char *)pKeyActionMap->pPressedKeysBuffer, 0, 0, 0); 15248 pWindow->DrawText(pFontLucida, 10, 40, 0, (const char *)pKeyActionMap->pPressedKeysBuffer, 0, 0, 0);
15252 if ( !pKeyActionMap->field_204 ) 15249 if ( !pKeyActionMap->field_204 )
15279 } 15276 }
15280 } 15277 }
15281 continue; 15278 continue;
15282 } 15279 }
15283 v16 = v15 - 1; 15280 v16 = v15 - 1;
15284 if ( !v16 )// pWindowType == 90 15281 if ( !v16 )// pWindowType == 90 (0x5A) WINDOW_5A
15285 { 15282 {
15286 if ( pWindow->Hint != (char *)1 ) 15283 if ( pWindow->Hint != (char *)1 )
15287 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0); 15284 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0);
15288 pButtonPtr_1C = (GUIButton *)pWindow->ptr_1C; 15285 pButtonPtr_1C = (GUIButton *)pWindow->ptr_1C;
15289 if ( (pButtonPtr_1C->uX /*& 0x80000000u*/) == 0 ) 15286 if ( pButtonPtr_1C->uX >= 0 )//if ( (pButtonPtr_1C->uX & 0x80000000u) == 0 )
15290 { 15287 {
15291 if ( (signed int)pButtonPtr_1C->uX <= 640 ) 15288 if ( (signed int)pButtonPtr_1C->uX <= 640 )
15292 { 15289 {
15293 //v25 = pButtonPtr_1C->uY; 15290 //v25 = pButtonPtr_1C->uY;
15294 if ( (pButtonPtr_1C->uY /*& 0x80000000u*/) == 0 ) 15291 if ( pButtonPtr_1C->uY >= 0 ) //if ( (pButtonPtr_1C->uY & 0x80000000u) == 0 )
15295 { 15292 {
15296 if ( (signed int)pButtonPtr_1C->uY <= 480 ) 15293 if ( (signed int)pButtonPtr_1C->uY <= 480 )
15297 { 15294 {
15298 pTexture2 = pButtonPtr_1C->pTextures[0]; 15295 pTexture2 = pButtonPtr_1C->pTextures[0];
15299 //goto LABEL_94; 15296 //goto LABEL_94;
15330 //goto LABEL_110; 15327 //goto LABEL_110;
15331 pGUIWindow2->Release(); 15328 pGUIWindow2->Release();
15332 continue; 15329 continue;
15333 } 15330 }
15334 v17 = v16 - 1; 15331 v17 = v16 - 1;
15335 if ( !v17 )//pWindowType == 91 15332 if ( !v17 )//pWindowType == 91 (0x5B) WINDOW_5B
15336 { 15333 {
15337 if ( pWindow->Hint != (char *)1 ) 15334 if ( pWindow->Hint != (char *)1 )
15338 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0); 15335 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0);
15339 pButtonPtr_1C = (GUIButton *)pWindow->ptr_1C; 15336 pButtonPtr_1C = (GUIButton *)pWindow->ptr_1C;
15340 pTexture2 = pButtonPtr_1C->pTextures[1]; 15337 pTexture2 = pButtonPtr_1C->pTextures[1];
15355 //goto LABEL_110; 15352 //goto LABEL_110;
15356 pGUIWindow2->Release(); 15353 pGUIWindow2->Release();
15357 continue; 15354 continue;
15358 } 15355 }
15359 v18 = v17 - 1; 15356 v18 = v17 - 1;
15360 if ( !v18 )//pWindowType == 92 15357 if ( !v18 )//pWindowType == 92 (0x5C) WINDOW_5C
15361 { 15358 {
15362 if ( pWindow->Hint != (char *)1 ) 15359 if ( pWindow->Hint != (char *)1 )
15363 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0); 15360 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0);
15364 pButtonPtr_1C = (GUIButton *)pWindow->ptr_1C; 15361 pButtonPtr_1C = (GUIButton *)pWindow->ptr_1C;
15365 pRenderer->DrawTextureTransparent(pWindow->uFrameX, pWindow->uFrameY, pButtonPtr_1C->pTextures[0]); 15362 pRenderer->DrawTextureTransparent(pWindow->uFrameX, pWindow->uFrameY, pButtonPtr_1C->pTextures[0]);
15375 pGUIWindow2 = pWindow; 15372 pGUIWindow2 = pWindow;
15376 pGUIWindow2->Release(); 15373 pGUIWindow2->Release();
15377 continue; 15374 continue;
15378 } 15375 }
15379 v19 = v18 - 1; 15376 v19 = v18 - 1;
15380 if ( !v19 )//pWindowType == 93 15377 if ( !v19 )//pWindowType == 93 (0x5D) WINDOW_5D
15381 { 15378 {
15382 if ( pWindow->Hint != (char *)1 ) 15379 if ( pWindow->Hint != (char *)1 )
15383 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0); 15380 pAudioPlayer->PlaySound((SoundID)75, 0, 0, -1, 0, 0, 0, 0);
15384 pRenderer->DrawTextureTransparent(pWindow->uFrameX, pWindow->uFrameY, *((Texture **)pWindow->ptr_1C + 16)); 15381 pRenderer->DrawTextureTransparent(pWindow->uFrameX, pWindow->uFrameY, *((Texture **)pWindow->ptr_1C + 16));
15385 viewparams->bRedrawGameUI = 1; 15382 viewparams->bRedrawGameUI = 1;
15388 //goto LABEL_110; 15385 //goto LABEL_110;
15389 pGUIWindow2->Release(); 15386 pGUIWindow2->Release();
15390 continue; 15387 continue;
15391 } 15388 }
15392 } 15389 }
15393 else//pWindowType == 80 15390 else//pWindowType == 80 (0x50) WINDOW_50
15394 { 15391 {
15395 v27 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFFu, 0xFFu, 0xFFu); 15392 v27 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFFu, 0xFFu, 0xFFu);
15396 if ( ptr_507BD0->field_40 == 1 ) 15393 if ( ptr_507BD0->field_40 == 1 )
15397 { 15394 {
15398 ptr_507BD0->DrawMessageBox(0); 15395 ptr_507BD0->DrawMessageBox(0);
15431 } 15428 }
15432 } 15429 }
15433 } 15430 }
15434 else 15431 else
15435 { 15432 {
15436 if ( pWindowType == 70 ) 15433 if ( pWindowType == 70 ) // 0x46 WINDOW_FinalWindow
15437 { 15434 {
15438 sub_41420D_press_esc(); 15435 sub_41420D_press_esc();
15439 continue; 15436 continue;
15440 } 15437 }
15441 if ( (signed int)pWindowType > 18 ) 15438 if ( (signed int)pWindowType > 18 )
15446 if ( v12 )// pWindowType > 26 15443 if ( v12 )// pWindowType > 26
15447 { 15444 {
15448 v13 = v12 - 4; 15445 v13 = v12 - 4;
15449 if ( v13 )//pWindowType > 30 15446 if ( v13 )//pWindowType > 30
15450 { 15447 {
15451 if ( v13 == 1 ) //pWindowType == 31 15448 if ( v13 == 1 ) //pWindowType == 31 (0x1F) WINDOW_1F
15452 { 15449 {
15453 pRenderer->ClearZBuffer(0, 479); 15450 pRenderer->ClearZBuffer(0, 479);
15454 draw_leather(); 15451 draw_leather();
15455 CharacterUI_InventoryTab_Draw(uActiveCharacter, 1); 15452 CharacterUI_InventoryTab_Draw(uActiveCharacter, 1);
15456 CharacterUI_DrawPaperdoll(uActiveCharacter); 15453 CharacterUI_DrawPaperdoll(uActiveCharacter);
15457 pRenderer->DrawTextureTransparent(pBtn_ExitCancel->uX, pBtn_ExitCancel->uY, 15454 pRenderer->DrawTextureTransparent(pBtn_ExitCancel->uX, pBtn_ExitCancel->uY,
15458 (Texture *)(uTextureID_x_x_u != -1 ? &pIcons_LOD->pTextures[uTextureID_x_x_u] : 0)); 15455 (Texture *)(uTextureID_x_x_u != -1 ? &pIcons_LOD->pTextures[uTextureID_x_x_u] : 0));
15459 } 15456 }
15460 } 15457 }
15461 else// pWindowType == 30 15458 else// pWindowType == 30 (0x1E) WINDOW_1E
15462 { 15459 {
15463 sub_467FB6(); 15460 sub_467FB6();
15464 } 15461 }
15465 } 15462 }
15466 else //pWindowType == 26 15463 else //pWindowType == 26 (0x1A) WINDOW_1A
15467 { 15464 {
15468 TransitionUI_Draw(); 15465 TransitionUI_Draw();
15469 } 15466 }
15470 continue; 15467 continue;
15471 } 15468 }
15478 if ( v8 )// pWindowType > 20 15475 if ( v8 )// pWindowType > 20
15479 { 15476 {
15480 v9 = v8 - 3; 15477 v9 = v8 - 3;
15481 if ( v9 )//pWindowType > 23 15478 if ( v9 )//pWindowType > 23
15482 { 15479 {
15483 //if ( v9 == 1 ) //pWindowType == 24 15480 //if ( v9 == 1 ) //pWindowType == 24 (0x18) WINDOW_MainMenu_Load
15484 // sub_4606F7(); 15481 // sub_4606F7();
15485 } 15482 }
15486 else//pWindowType == 23 15483 else//pWindowType == 23 (0x17) WINDOW_17
15487 { 15484 {
15488 sub_4606FE(); 15485 sub_4606FE();
15489 } 15486 }
15490 } 15487 }
15491 else//pWindowType == 20 15488 else//pWindowType == 20 (0x14) WINDOW_Chest
15492 { 15489 {
15493 if ( pCurrentScreen == 10 ) 15490 if ( pCurrentScreen == 10 )
15494 { 15491 {
15495 Chest::DrawChestUI((unsigned int)pWindow->ptr_1C); 15492 Chest::DrawChestUI((unsigned int)pWindow->ptr_1C);
15496 } 15493 }
15505 (Texture *)(uTextureID_506438 != -1 ? (int)&pIcons_LOD->pTextures[uTextureID_506438] : 0)); 15502 (Texture *)(uTextureID_506438 != -1 ? (int)&pIcons_LOD->pTextures[uTextureID_506438] : 0));
15506 } 15503 }
15507 } 15504 }
15508 } 15505 }
15509 } 15506 }
15510 else//pWindowType == 19 15507 else//pWindowType == 19 (0x13) WINDOW_GreetingNPC
15511 { 15508 {
15512 DrawBranchlessDialogueUI(); 15509 DrawBranchlessDialogueUI();
15513 } 15510 }
15514 continue; 15511 continue;
15515 } 15512 }
15542 ++pMessageQueue_50CBD0->uNumMessages; 15539 ++pMessageQueue_50CBD0->uNumMessages;
15543 continue; 15540 continue;
15544 } 15541 }
15545 continue; 15542 continue;
15546 } 15543 }
15547 if ( pWindowType == 18 ) 15544 if ( pWindowType == 18 ) //(0x12) WINDOW_SpellBook
15548 { 15545 {
15549 sub_412B58(); 15546 sub_412B58();
15550 } 15547 }
15551 else 15548 else
15552 { 15549 {
15556 if ( v5 )//pWindowType >12 15553 if ( v5 )//pWindowType >12
15557 { 15554 {
15558 v6 = v5 - 4; 15555 v6 = v5 - 4;
15559 if ( v6 )//pWindowType > 16 15556 if ( v6 )//pWindowType > 16
15560 { 15557 {
15561 if ( v6 == 1 )//pWindowType == 17 15558 if ( v6 == 1 )//pWindowType == 17 (0x11) WINDOW_ChangeLocation
15562 TravelUI_Draw(); 15559 TravelUI_Draw();
15563 } 15560 }
15564 else//pWindowType == 16 15561 else//pWindowType == 16 (0x10) WINDOW_10
15565 { 15562 {
15566 RestUI_Draw(); 15563 RestUI_Draw();
15567 } 15564 }
15568 } 15565 }
15569 else// pWindowType == 12 15566 else// pWindowType == 12 (0xC) WINDOW_C
15570 { 15567 {
15571 QuickRefDraw(); 15568 QuickRefDraw();
15572 } 15569 }
15573 continue; 15570 continue;
15574 } 15571 }
15581 if ( v3 )// pWindowType > 4 15578 if ( v3 )// pWindowType > 4
15582 { 15579 {
15583 v4 = v3 - 2; 15580 v4 = v3 - 2;
15584 if ( v4 )//pWindowType > 6 15581 if ( v4 )//pWindowType > 6
15585 { 15582 {
15586 if ( v4 == 3 )//pWindowType == 9 15583 if ( v4 == 3 )//pWindowType == 9 (0x9) WINDOW_Book
15587 DrawSpellbook((unsigned int)pWindow->ptr_1C); 15584 SellectDrawBook((unsigned int)pWindow->ptr_1C);
15588 } 15585 }
15589 else//pWindowType == 6 15586 else//pWindowType == 6 (0x6) WINDOW_Options
15590 { 15587 {
15591 sub_414F82_DrawGameOptions(); 15588 sub_414F82_DrawGameOptions();
15592 } 15589 }
15593 } 15590 }
15594 else//pWindowType == 4 15591 else//pWindowType == 4 (0x4) WINDOW_CharacterRecord
15595 { 15592 {
15596 CharacterUI_CharacterScreen_Draw(uActiveCharacter); 15593 CharacterUI_CharacterScreen_Draw(uActiveCharacter);
15597 } 15594 }
15598 continue; 15595 continue;
15599 } 15596 }
15600 pTexture = (Texture *)(uTextureID_507944 != -1 ? &pIcons_LOD->pTextures[uTextureID_507944] : 0);//pWindowType == 3 15597 pTexture = (Texture *)(uTextureID_507944 != -1 ? &pIcons_LOD->pTextures[uTextureID_507944] : 0);//pWindowType == 3 (0x3)
15601 pY = pViewport->uViewportY; 15598 pY = pViewport->uViewportY;
15602 pX = pViewport->uViewportX; 15599 pX = pViewport->uViewportX;
15603 //goto LABEL_18; 15600 //goto LABEL_18;
15604 pRenderer->DrawTextureIndexed(pX, pY, pTexture); 15601 pRenderer->DrawTextureIndexed(pX, pY, pTexture);
15605 viewparams->bRedrawGameUI = 1; 15602 viewparams->bRedrawGameUI = 1;