Mercurial > mm7
comparison mm7_5.cpp @ 688:c0bfb386b15f
some ui cleanup
author | Gloval |
---|---|
date | Sat, 16 Mar 2013 01:11:39 +0400 |
parents | ecfb1b3c9a39 |
children | 26dfde53decd |
comparison
equal
deleted
inserted
replaced
678:35a97ce58790 | 688:c0bfb386b15f |
---|---|
2740 v97 = sub_494820(pParty->uCurrentHour); | 2740 v97 = sub_494820(pParty->uCurrentHour); |
2741 dword_506F14 = v0; | 2741 dword_506F14 = v0; |
2742 _506F18_num_hours_to_sleep = 60 * v97 - pParty->uCurrentMinute; | 2742 _506F18_num_hours_to_sleep = 60 * v97 - pParty->uCurrentMinute; |
2743 continue; | 2743 continue; |
2744 case UIMSG_4E: | 2744 case UIMSG_4E: |
2745 if ( dword_50654C && byte_506550 ) | 2745 if ( quick_spell_at_page && byte_506550 ) |
2746 { | 2746 { |
2747 v173 = pSpellStats->pInfos[dword_50654C + 11 * pPlayers[uActiveCharacter]->lastOpenedSpellbookPage].pName; | 2747 v173 = pSpellStats->pInfos[quick_spell_at_page + 11 * pPlayers[uActiveCharacter]->lastOpenedSpellbookPage].pName; |
2748 v157 = pGlobalTXT_LocalizationStrings[483]; | 2748 v157 = pGlobalTXT_LocalizationStrings[483]; |
2749 _sprintex_2args_draw_status_and_continue: | 2749 _sprintex_2args_draw_status_and_continue: |
2750 sprintf(pTmpBuf, v157, v173); | 2750 sprintf(pTmpBuf, v157, v173); |
2751 } | 2751 } |
2752 else | 2752 else |
2765 !*(char *)(uNumSeconds + 11 * *(char *)(uNumSeconds + 6734) + uMessageParam + 402)) ) | 2765 !*(char *)(uNumSeconds + 11 * *(char *)(uNumSeconds + 6734) + uMessageParam + 402)) ) |
2766 continue; | 2766 continue; |
2767 if ( sub_4637E0_is_there_popup_onscreen() ) | 2767 if ( sub_4637E0_is_there_popup_onscreen() ) |
2768 dword_507B00_spell_info_to_draw_in_popup = uMessageParam + 1; | 2768 dword_507B00_spell_info_to_draw_in_popup = uMessageParam + 1; |
2769 v98 = *(char *)(uNumSeconds + 6734); | 2769 v98 = *(char *)(uNumSeconds + 6734); |
2770 if ( dword_50654C - 1 == uMessageParam ) | 2770 if ( quick_spell_at_page - 1 == uMessageParam ) |
2771 { | 2771 { |
2772 v178 = pSpellStats->pInfos[uMessageParam + 11 * v98 + 1].pName; | 2772 v178 = pSpellStats->pInfos[uMessageParam + 11 * v98 + 1].pName; |
2773 v161 = pGlobalTXT_LocalizationStrings[485]; | 2773 v161 = pGlobalTXT_LocalizationStrings[485]; |
2774 } | 2774 } |
2775 else | 2775 else |
2785 case UIMSG_58: | 2785 case UIMSG_58: |
2786 GUIWindow::Create(pBtn_InstallRemoveSpell->uX, pBtn_InstallRemoveSpell->uY, 0, 0, (enum WindowType)90, (int)pBtn_InstallRemoveSpell, 0); | 2786 GUIWindow::Create(pBtn_InstallRemoveSpell->uX, pBtn_InstallRemoveSpell->uY, 0, 0, (enum WindowType)90, (int)pBtn_InstallRemoveSpell, 0); |
2787 if ( !uActiveCharacter ) | 2787 if ( !uActiveCharacter ) |
2788 continue; | 2788 continue; |
2789 pPlayer10 = pPlayers[uActiveCharacter]; | 2789 pPlayer10 = pPlayers[uActiveCharacter]; |
2790 if ( !byte_506550 || !dword_50654C ) | 2790 if ( !byte_506550 || !quick_spell_at_page ) |
2791 { | 2791 { |
2792 v165 = 0; | 2792 v165 = 0; |
2793 v151 = 0; | 2793 v151 = 0; |
2794 v144 = 0; | 2794 v144 = 0; |
2795 v139 = 0; | 2795 v139 = 0; |
2796 v135 = -1; | 2796 v135 = -1; |
2797 v132 = 0; | 2797 v132 = 0; |
2798 pPlayer10->uQuickSpell = 0; | 2798 pPlayer10->uQuickSpell = 0; |
2799 v130 = 0; | 2799 v130 = 0; |
2800 dword_50654C = 0; | 2800 quick_spell_at_page = 0; |
2801 v127 = 203; | 2801 v127 = 203; |
2802 goto _play_sound_and_continue; | 2802 goto _play_sound_and_continue; |
2803 } | 2803 } |
2804 v99 = dword_50654C + 11 * pPlayers[uActiveCharacter]->lastOpenedSpellbookPage; | 2804 v99 = quick_spell_at_page + 11 * pPlayers[uActiveCharacter]->lastOpenedSpellbookPage; |
2805 pPlayers[uActiveCharacter]->uQuickSpell = v99; | 2805 pPlayers[uActiveCharacter]->uQuickSpell = v99; |
2806 stru_A750F8[uActiveCharacter + 3]._494836(v99, uActiveCharacter); | 2806 stru_A750F8[uActiveCharacter + 3]._494836(v99, uActiveCharacter); |
2807 if ( uActiveCharacter ) | 2807 if ( uActiveCharacter ) |
2808 pPlayer10->PlaySound(SPEECH_12, 0); | 2808 pPlayer10->PlaySound(SPEECH_12, 0); |
2809 byte_506550 = 0; | 2809 byte_506550 = 0; |
2891 // uNumSeconds = (unsigned int)pPlayers[uActiveCharacter]; | 2891 // uNumSeconds = (unsigned int)pPlayers[uActiveCharacter]; |
2892 auto player = pPlayers[uActiveCharacter]; | 2892 auto player = pPlayers[uActiveCharacter]; |
2893 if (player->spellbook.pChapters[player->lastOpenedSpellbookPage].bIsSpellAvailable[uMessageParam]) | 2893 if (player->spellbook.pChapters[player->lastOpenedSpellbookPage].bIsSpellAvailable[uMessageParam]) |
2894 //if ( *(char *)(uNumSeconds + 11 * *(char *)(uNumSeconds + &lastOpenedSpellbookPage) + uMessageParam + 402) ) | 2894 //if ( *(char *)(uNumSeconds + 11 * *(char *)(uNumSeconds + &lastOpenedSpellbookPage) + uMessageParam + 402) ) |
2895 { | 2895 { |
2896 if ( dword_50654C - 1 == uMessageParam ) | 2896 if ( quick_spell_at_page - 1 == uMessageParam ) |
2897 { | 2897 { |
2898 pGUIWindow_CurrentMenu->Release(); | 2898 pGUIWindow_CurrentMenu->Release(); |
2899 pEventTimer->Resume(); | 2899 pEventTimer->Resume(); |
2900 viewparams->bRedrawGameUI = v0; | 2900 viewparams->bRedrawGameUI = v0; |
2901 pCurrentScreen = SCREEN_GAME; | 2901 pCurrentScreen = SCREEN_GAME; |
2902 pIcons_LOD->_4114F2(); | 2902 pIcons_LOD->_4114F2(); |
2903 v103 = dword_50654C + 11 * player->lastOpenedSpellbookPage; | 2903 v103 = quick_spell_at_page + 11 * player->lastOpenedSpellbookPage; |
2904 if ( dword_50C9E8 < 40 ) | 2904 if ( dword_50C9E8 < 40 ) |
2905 { | 2905 { |
2906 dword_50C9EC[3 * dword_50C9E8] = UIMSG_CastSpellFromBook; | 2906 dword_50C9EC[3 * dword_50C9E8] = UIMSG_CastSpellFromBook; |
2907 dword_50C9EC[3 * dword_50C9E8 + 1] = v103; | 2907 dword_50C9EC[3 * dword_50C9E8 + 1] = v103; |
2908 dword_50C9EC[3 * dword_50C9E8 + 2] = uActiveCharacter - 1; | 2908 dword_50C9EC[3 * dword_50C9E8 + 2] = uActiveCharacter - 1; |
2910 } | 2910 } |
2911 } | 2911 } |
2912 else | 2912 else |
2913 { | 2913 { |
2914 byte_506550 = 1; | 2914 byte_506550 = 1; |
2915 dword_50654C = uMessageParam + 1; | 2915 quick_spell_at_page = uMessageParam + 1; |
2916 } | 2916 } |
2917 } | 2917 } |
2918 } | 2918 } |
2919 continue; | 2919 continue; |
2920 | 2920 |
12422 { | 12422 { |
12423 return GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat((unsigned __int8)uColor, BYTE1(uColor), BYTE2(uColor)); | 12423 return GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat((unsigned __int8)uColor, BYTE1(uColor), BYTE2(uColor)); |
12424 } | 12424 } |
12425 | 12425 |
12426 //----- (0040DEF3) -------------------------------------------------------- | 12426 //----- (0040DEF3) -------------------------------------------------------- |
12427 unsigned int __fastcall GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(unsigned __int16 r, unsigned __int16 g, unsigned __int16 b) | 12427 unsigned short GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat( unsigned __int16 r, unsigned __int16 g, unsigned __int16 b ) |
12428 { | 12428 { |
12429 return ((unsigned int)b >> (8 - LOBYTE(pRenderer->uTargetBBits))) | pRenderer->uTargetGMask & (g << (LOBYTE(pRenderer->uTargetGBits) + LOBYTE(pRenderer->uTargetBBits) - 8)) | pRenderer->uTargetRMask & (r << (LOBYTE(pRenderer->uTargetGBits) + LOBYTE(pRenderer->uTargetRBits) + LOBYTE(pRenderer->uTargetBBits) - 8)); | 12429 return ((unsigned int)b >> (8 - LOBYTE(pRenderer->uTargetBBits))) | pRenderer->uTargetGMask & (g << (LOBYTE(pRenderer->uTargetGBits) + |
12430 LOBYTE(pRenderer->uTargetBBits) - 8)) | pRenderer->uTargetRMask & (r << (LOBYTE(pRenderer->uTargetGBits) + | |
12431 LOBYTE(pRenderer->uTargetRBits) + LOBYTE(pRenderer->uTargetBBits) - 8)); | |
12430 } | 12432 } |
12431 | 12433 |
12432 //----- (0040DF3D) -------------------------------------------------------- | 12434 //----- (0040DF3D) -------------------------------------------------------- |
12433 void __cdecl CallRenderPresent() | 12435 void __cdecl CallRenderPresent() |
12434 { | 12436 { |
13218 return v6.DrawTitleText(pBook2Font, 0, 22u, 0, pGlobalTXT_LocalizationStrings[10], 3u); | 13220 return v6.DrawTitleText(pBook2Font, 0, 22u, 0, pGlobalTXT_LocalizationStrings[10], 3u); |
13219 } | 13221 } |
13220 // 4E1D3A: using guessed type __int16 word_4E1D3A[]; | 13222 // 4E1D3A: using guessed type __int16 word_4E1D3A[]; |
13221 | 13223 |
13222 //----- (00411300) -------------------------------------------------------- | 13224 //----- (00411300) -------------------------------------------------------- |
13223 void LoadSpellbook(unsigned int school) | 13225 void LoadSpellbook(unsigned int spell_school) |
13224 { | 13226 { |
13225 //unsigned int v1; // esi@1 | 13227 //unsigned int v1; // esi@1 |
13226 Player *pPlayer; // ecx@1 | 13228 Player *pPlayer; // ecx@1 |
13227 char v3; // al@1 | 13229 char v3; // al@1 |
13228 //int v4; // edi@5 | 13230 //int v4; // edi@5 |
13237 | 13239 |
13238 byte_506550 = 0; | 13240 byte_506550 = 0; |
13239 //v1 = uID; | 13241 //v1 = uID; |
13240 pPlayer = pPlayers[uActiveCharacter]; | 13242 pPlayer = pPlayers[uActiveCharacter]; |
13241 v3 = pPlayer->uQuickSpell; | 13243 v3 = pPlayer->uQuickSpell; |
13242 if ( v3 && (unsigned __int8)v3 / 11 == school ) | 13244 if ( v3 && (unsigned __int8)v3 / 11 == spell_school ) |
13243 dword_50654C = (unsigned __int8)v3 - 11 * school; | 13245 quick_spell_at_page = (unsigned __int8)v3 - 11 * spell_school; |
13244 else | 13246 else |
13245 dword_50654C = 0; | 13247 quick_spell_at_page = 0; |
13246 | |
13247 //char *v11 = &pPlayer->field_152[11 * school + 63]; | |
13248 | 13248 |
13249 for (uint i = 1; i < 12; ++i) | 13249 for (uint i = 1; i < 12; ++i) |
13250 { | 13250 { |
13251 //if (v11[i]) | 13251 if (pPlayer->spellbook.pChapters[spell_school].bIsSpellAvailable[i - 1]) |
13252 if (pPlayer->spellbook.pChapters[school].bIsSpellAvailable[i - 1]) | 13252 { |
13253 { | 13253 sprintf(pContainer, "SB%sS%02d", spellbook_texture_filename_suffices[spell_school], pSpellbookSpellIndices[spell_school][i]); |
13254 sprintf(pContainer, "SB%sS%02d", spellbook_texture_filename_suffices[school], pSpellbookSpellIndices[school][i]); | |
13255 dword_506408[i] = pIcons_LOD->LoadTexturePtr(pContainer, TEXTURE_16BIT_PALETTE); | 13254 dword_506408[i] = pIcons_LOD->LoadTexturePtr(pContainer, TEXTURE_16BIT_PALETTE); |
13256 | 13255 |
13257 sprintf(pContainer, "SB%sC%02d", spellbook_texture_filename_suffices[school], pSpellbookSpellIndices[school][i]); | 13256 sprintf(pContainer, "SB%sC%02d", spellbook_texture_filename_suffices[spell_school], pSpellbookSpellIndices[spell_school][i]); |
13258 dword_5063D8[i] = pIcons_LOD->LoadTexturePtr(pContainer, TEXTURE_16BIT_PALETTE); | 13257 dword_5063D8[i] = pIcons_LOD->LoadTexturePtr(pContainer, TEXTURE_16BIT_PALETTE); |
13259 } | 13258 } |
13260 } | 13259 } |
13261 } | 13260 } |
13262 | 13261 |
13296 } | 13295 } |
13297 | 13296 |
13298 //----- (00411473) -------------------------------------------------------- | 13297 //----- (00411473) -------------------------------------------------------- |
13299 void __cdecl sub_411473() | 13298 void __cdecl sub_411473() |
13300 { | 13299 { |
13301 Texture **v0; // esi@1 | |
13302 Texture **v1; // edi@1 | |
13303 Texture *v2; // ecx@2 | |
13304 Texture *v3; // ecx@2 | |
13305 | |
13306 pTexture_pagemask->Release(); | 13300 pTexture_pagemask->Release(); |
13307 pTexture_506448->Release(); | 13301 pTexture_506448->Release(); |
13308 pTexture_50643C->Release(); | 13302 pTexture_50643C->Release(); |
13309 v0 = &pTextures_tabs[0][1]; | 13303 for (uint i = 0; i < 8; ++i) |
13310 v1 = pTextures_5064A0; | 13304 { |
13311 do | 13305 pSpellBookPagesTextr[i]->Release(); |
13312 { | 13306 pTextures_tabs[i][0]->Release(); |
13313 (*v1)->Release(); | 13307 pTextures_tabs[i][1]->Release(); |
13314 v2 = *(v0 - 1); | 13308 } |
13315 *v1 = 0; | |
13316 v2->Release(); | |
13317 v3 = *v0; | |
13318 *(v0 - 1) = 0; | |
13319 v3->Release(); | |
13320 *v0 = 0; | |
13321 ++v1; | |
13322 v0 += 2; | |
13323 } | |
13324 while ( (signed int)v1 < (signed int)&pTextures_5064A0[9] ); | |
13325 pAudioPlayer->PlaySound((SoundID)231, 0, 0, -1, 0, 0, 0, 0); | 13309 pAudioPlayer->PlaySound((SoundID)231, 0, 0, -1, 0, 0, 0, 0); |
13326 pIcons_LOD->_4114F2(); | 13310 pIcons_LOD->_4114F2(); |
13327 } | 13311 } |
13328 | 13312 |
13329 | 13313 |
13350 | 13334 |
13351 | 13335 |
13352 | 13336 |
13353 | 13337 |
13354 //----- (00412AF9) -------------------------------------------------------- | 13338 //----- (00412AF9) -------------------------------------------------------- |
13355 void __cdecl sub_412AF9() | 13339 void sub_412AF9() |
13356 { | 13340 { |
13357 int v0; // ecx@1 | 13341 int v0; // ecx@1 |
13358 | 13342 |
13359 v0 = 0; | 13343 v0 = 0; |
13360 if ( uActiveCharacter ) | 13344 if ( uActiveCharacter ) |
13361 v0 = pParty->pPlayers[uActiveCharacter-1].lastOpenedSpellbookPage;//*((char *)&pParty->pPartyBuffs[5].uExpireTime + 6972 * uActiveCharacter + 2); | 13345 v0 = pParty->pPlayers[uActiveCharacter-1].lastOpenedSpellbookPage;//*((char *)&pParty->pPartyBuffs[5].uExpireTime + 6972 * uActiveCharacter + 2); |
13362 pRenderer->DrawTextureIndexed(8u, 8u, pTextures_5064A0[v0]); | 13346 pRenderer->DrawTextureIndexed(8u, 8u, pSpellBookPagesTextr[v0]); |
13363 pRenderer->DrawTextureIndexed(0x1DCu, 0x1C2u, pTexture_50643C); | 13347 pRenderer->DrawTextureIndexed(0x1DCu, 0x1C2u, pTexture_50643C); |
13364 pRenderer->DrawTextureIndexed(0x231u, 0x1C2u, pTexture_506448); | 13348 pRenderer->DrawTextureIndexed(0x231u, 0x1C2u, pTexture_506448); |
13365 } | 13349 } |
13366 | 13350 |
13367 //----- (00412B58) -------------------------------------------------------- | 13351 //----- (00412B58) -------------------------------------------------------- |
13409 if ( *(&v0->_guilds_member_bits[v1 + 63] + v4) ) | 13393 if ( *(&v0->_guilds_member_bits[v1 + 63] + v4) ) |
13410 { | 13394 { |
13411 v5 = (Texture *)dword_506408[v4]; | 13395 v5 = (Texture *)dword_506408[v4]; |
13412 if ( v5 != v3 ) | 13396 if ( v5 != v3 ) |
13413 { | 13397 { |
13414 if ( dword_50654C == v4 ) | 13398 if ( quick_spell_at_page == v4 ) |
13415 { | 13399 { |
13416 v6 = dword_5063D8[v4]; | 13400 v6 = dword_5063D8[v4]; |
13417 v23 = dword_5063D8[v4]; | 13401 v23 = dword_5063D8[v4]; |
13418 } | 13402 } |
13419 else | 13403 else |
13584 unsigned int v12; // [sp-8h] [bp-64h]@7 | 13568 unsigned int v12; // [sp-8h] [bp-64h]@7 |
13585 Texture *v13; // [sp-4h] [bp-60h]@3 | 13569 Texture *v13; // [sp-4h] [bp-60h]@3 |
13586 Texture *v14; // [sp-4h] [bp-60h]@7 | 13570 Texture *v14; // [sp-4h] [bp-60h]@7 |
13587 GUIWindow a1; // [sp+8h] [bp-54h]@10 | 13571 GUIWindow a1; // [sp+8h] [bp-54h]@10 |
13588 | 13572 |
13589 pRenderer->DrawTextureIndexed(pViewport->uViewportX, pViewport->uViewportY, pTextures_5064A0[11]); | 13573 pRenderer->DrawTextureIndexed(pViewport->uViewportX, pViewport->uViewportY, pSpellBookPagesTextr_11); |
13590 if ( dword_506548 || !dword_506528 ) | 13574 if ( dword_506548 || !dword_506528 ) |
13591 { | 13575 { |
13592 v13 = pTex_tab_an_6a__zoom_off; | 13576 v13 = pTex_tab_an_6a__zoom_off; |
13593 v11 = pViewport->uViewportY + 2; | 13577 v11 = pViewport->uViewportY + 2; |
13594 v0 = pViewport->uViewportX + 407; | 13578 v0 = pViewport->uViewportX + 407; |
13762 a1.DrawText(pAutonoteFont, 1, 0, 0, pQuestTable[v4-1], 0, 0, 0);//(&dword_722F10)[4 * v4], 0, 0, 0); | 13746 a1.DrawText(pAutonoteFont, 1, 0, 0, pQuestTable[v4-1], 0, 0, 0);//(&dword_722F10)[4 * v4], 0, 0, 0); |
13763 v6 = pAutonoteFont->CalcTextHeight(v5, &a1, 1, 0); | 13747 v6 = pAutonoteFont->CalcTextHeight(v5, &a1, 1, 0); |
13764 v7 = a1.uFrameY + v6; | 13748 v7 = a1.uFrameY + v6; |
13765 if ( (signed int)(a1.uFrameY + v6) > (signed int)a1.uFrameHeight ) | 13749 if ( (signed int)(a1.uFrameY + v6) > (signed int)a1.uFrameHeight ) |
13766 break; | 13750 break; |
13767 pRenderer->DrawTextureTransparent(100, v7 + 12, pTextures_5064A0[10]); | 13751 pRenderer->DrawTextureTransparent(100, v7 + 12, pSpellBookPagesTextr_10); |
13768 ++v3; | 13752 ++v3; |
13769 a1.uFrameY = v7 + 24; | 13753 a1.uFrameY = v7 + 24; |
13770 } | 13754 } |
13771 } | 13755 } |
13772 | 13756 |
14069 a1.DrawText(pAutonoteFont, 1, 0, 0, pAutonoteTxt[v13-1].pText, 0, 0, 0); | 14053 a1.DrawText(pAutonoteFont, 1, 0, 0, pAutonoteTxt[v13-1].pText, 0, 0, 0); |
14070 v15 = pAutonoteFont->CalcTextHeight(v14, &a1, 1, 0); | 14054 v15 = pAutonoteFont->CalcTextHeight(v14, &a1, 1, 0); |
14071 v16 = a1.uFrameY + v15; | 14055 v16 = a1.uFrameY + v15; |
14072 if ( (signed int)(a1.uFrameY + v15) > (signed int)a1.uFrameHeight ) | 14056 if ( (signed int)(a1.uFrameY + v15) > (signed int)a1.uFrameHeight ) |
14073 break; | 14057 break; |
14074 pRenderer->DrawTextureTransparent(0x64u, v16 + 12, pTextures_5064A0[10]); | 14058 pRenderer->DrawTextureTransparent(0x64u, v16 + 12, pSpellBookPagesTextr_10); |
14075 ++v12; | 14059 ++v12; |
14076 a1.uFrameY = v16 + 24; | 14060 a1.uFrameY = v16 + 24; |
14077 } | 14061 } |
14078 } | 14062 } |
14079 | 14063 |
14080 | 14064 |
14081 //----- (00413980) -------------------------------------------------------- | 14065 //----- (00413980) -------------------------------------------------------- |
14082 char *__cdecl DrawBook_Maps() | 14066 void DrawBook_Maps() |
14083 { | 14067 { |
14084 unsigned int v0; // eax@3 | 14068 |
14085 unsigned int v1; // eax@7 | |
14086 unsigned int v2; // eax@10 | |
14087 unsigned int v3; // eax@13 | |
14088 unsigned int v4; // eax@16 | |
14089 unsigned int v5; // eax@19 | |
14090 int v6; // eax@31 | 14069 int v6; // eax@31 |
14091 unsigned int v7; // eax@35 | 14070 unsigned int map_id; // eax@35 |
14092 unsigned int v9; // [sp-8h] [bp-E0h]@3 | 14071 Texture *buttnTxtr; // [sp-4h] [bp-DCh]@3 |
14093 unsigned int v10; // [sp-8h] [bp-E0h]@7 | 14072 char party_coord[120]; // [sp+Ch] [bp-CCh]@37 |
14094 unsigned int v11; // [sp-8h] [bp-E0h]@10 | 14073 GUIWindow map_window; // [sp+84h] [bp-54h]@35 |
14095 unsigned int v12; // [sp-8h] [bp-E0h]@13 | 14074 unsigned int textrX, textrY; |
14096 unsigned int v13; // [sp-8h] [bp-E0h]@16 | 14075 |
14097 unsigned int v14; // [sp-8h] [bp-E0h]@19 | 14076 pRenderer->DrawTextureIndexed(pViewport->uViewportX, pViewport->uViewportY, pSpellBookPagesTextr_12); |
14098 Texture *v15; // [sp-4h] [bp-DCh]@3 | |
14099 Texture *v16; // [sp-4h] [bp-DCh]@7 | |
14100 Texture *v17; // [sp-4h] [bp-DCh]@10 | |
14101 Texture *v18; // [sp-4h] [bp-DCh]@13 | |
14102 Texture *v19; // [sp-4h] [bp-DCh]@16 | |
14103 Texture *v20; // [sp-4h] [bp-DCh]@19 | |
14104 char Str[120]; // [sp+Ch] [bp-CCh]@37 | |
14105 GUIWindow v22; // [sp+84h] [bp-54h]@35 | |
14106 | |
14107 pRenderer->DrawTextureIndexed(pViewport->uViewportX, pViewport->uViewportY, pTextures_5064A0[12]); | |
14108 if ( dword_506548 || viewparams->field_2C / 128 >= 12 ) | 14077 if ( dword_506548 || viewparams->field_2C / 128 >= 12 ) |
14109 { | 14078 { |
14110 v15 = pTex_tab_an_6a__zoom_off; | 14079 buttnTxtr = pTex_tab_an_6a__zoom_off; |
14111 v9 = pViewport->uViewportY + 2; | 14080 textrY = pViewport->uViewportY + 2; |
14112 v0 = pViewport->uViewportX + 408; | 14081 textrX = pViewport->uViewportX + 408; |
14113 } | 14082 } |
14114 else | 14083 else |
14115 { | 14084 { |
14116 v15 = pTex_tab_an_6b__zoom_on; | 14085 buttnTxtr = pTex_tab_an_6b__zoom_on; |
14117 v9 = pViewport->uViewportY + 1; | 14086 textrY = pViewport->uViewportY + 1; |
14118 v0 = pViewport->uViewportX + 398; | 14087 textrX = pViewport->uViewportX + 398; |
14119 } | 14088 } |
14120 pRenderer->DrawTextureTransparent(v0, v9, v15); | 14089 pRenderer->DrawTextureTransparent(textrX, textrY, buttnTxtr); |
14121 if ( dword_506544 || viewparams->field_2C / 128 <= 3 ) | 14090 if ( dword_506544 || viewparams->field_2C / 128 <= 3 ) |
14122 { | 14091 { |
14123 v16 = pTex_tab_an_7a__zoot_off; | 14092 buttnTxtr = pTex_tab_an_7a__zoot_off; |
14124 v10 = pViewport->uViewportY + 38; | 14093 textrY = pViewport->uViewportY + 38; |
14125 v1 = pViewport->uViewportX + 408; | 14094 textrX = pViewport->uViewportX + 408; |
14126 } | 14095 } |
14127 else | 14096 else |
14128 { | 14097 { |
14129 v16 = pTex_tab_an_7b__zoot_on; | 14098 buttnTxtr = pTex_tab_an_7b__zoot_on; |
14130 v10 = pViewport->uViewportY + 38; | 14099 textrY = pViewport->uViewportY + 38; |
14131 v1 = pViewport->uViewportX + 398; | 14100 textrX = pViewport->uViewportX + 398; |
14132 } | 14101 } |
14133 pRenderer->DrawTextureTransparent(v1, v10, v16); | 14102 pRenderer->DrawTextureTransparent(textrX, textrY, buttnTxtr); |
14134 if ( dword_506540 ) | 14103 if ( dword_506540 ) |
14135 { | 14104 { |
14136 v17 = pTexture_506390; | 14105 buttnTxtr = pTexture_506390; |
14137 v11 = pViewport->uViewportY + 113; | 14106 textrY = pViewport->uViewportY + 113; |
14138 v2 = pViewport->uViewportX + 408; | 14107 textrX = pViewport->uViewportX + 408; |
14139 } | 14108 } |
14140 else | 14109 else |
14141 { | 14110 { |
14142 v17 = pTexture_506394; | 14111 buttnTxtr = pTexture_506394; |
14143 v11 = pViewport->uViewportY + 113; | 14112 textrY = pViewport->uViewportY + 113; |
14144 v2 = pViewport->uViewportX + 398; | 14113 textrX = pViewport->uViewportX + 398; |
14145 } | 14114 } |
14146 pRenderer->DrawTextureTransparent(v2, v11, v17); | 14115 pRenderer->DrawTextureTransparent(textrX, textrY, buttnTxtr); |
14147 if ( dword_50653C ) | 14116 if ( dword_50653C ) |
14148 { | 14117 { |
14149 v18 = pTexture_506388; | 14118 buttnTxtr = pTexture_506388; |
14150 v12 = pViewport->uViewportX + 150; | 14119 textrY = pViewport->uViewportX + 150; |
14151 v3 = pViewport->uViewportY + 408; | 14120 textrX = pViewport->uViewportY + 408; |
14152 } | 14121 } |
14153 else | 14122 else |
14154 { | 14123 { |
14155 v18 = pTexture_50638C; | 14124 buttnTxtr = pTexture_50638C; |
14156 v12 = pViewport->uViewportX + 150; | 14125 textrY = pViewport->uViewportX + 150; |
14157 v3 = pViewport->uViewportY + 399; | 14126 textrX = pViewport->uViewportY + 399; |
14158 } | 14127 } |
14159 pRenderer->DrawTextureTransparent(v3, v12, v18); | 14128 pRenderer->DrawTextureTransparent(textrX, textrY, buttnTxtr); |
14160 if ( dword_506538 ) | 14129 if ( dword_506538 ) |
14161 { | 14130 { |
14162 v19 = pTexture_506380; | 14131 buttnTxtr = pTexture_506380; |
14163 v13 = pViewport->uViewportY + 188; | 14132 textrY = pViewport->uViewportY + 188; |
14164 v4 = pViewport->uViewportX + 408; | 14133 textrX = pViewport->uViewportX + 408; |
14165 } | 14134 } |
14166 else | 14135 else |
14167 { | 14136 { |
14168 v19 = pTexture_506384; | 14137 buttnTxtr = pTexture_506384; |
14169 v13 = pViewport->uViewportY + 188; | 14138 textrY = pViewport->uViewportY + 188; |
14170 v4 = pViewport->uViewportX + 397; | 14139 textrX = pViewport->uViewportX + 397; |
14171 } | 14140 } |
14172 pRenderer->DrawTextureTransparent(v4, v13, v19); | 14141 pRenderer->DrawTextureTransparent(textrX, textrY, buttnTxtr); |
14173 if ( dword_506534 ) | 14142 if ( dword_506534 ) |
14174 { | 14143 { |
14175 v20 = pTexture_506378; | 14144 buttnTxtr = pTexture_506378; |
14176 v14 = pViewport->uViewportY + 226; | 14145 textrY = pViewport->uViewportY + 226; |
14177 v5 = pViewport->uViewportX + 408; | 14146 textrX = pViewport->uViewportX + 408; |
14178 } | 14147 } |
14179 else | 14148 else |
14180 { | 14149 { |
14181 v20 = pTexture_50637C; | 14150 buttnTxtr = pTexture_50637C; |
14182 v14 = pViewport->uViewportY + 226; | 14151 textrY = pViewport->uViewportY + 226; |
14183 v5 = pViewport->uViewportX + 397; | 14152 textrX = pViewport->uViewportX + 397; |
14184 } | 14153 } |
14185 pRenderer->DrawTextureTransparent(v5, v14, v20); | 14154 pRenderer->DrawTextureTransparent(textrX, textrY, buttnTxtr); |
14186 if ( dword_506544 ) | 14155 if ( dword_506544 ) |
14187 viewparams->_443291(); | 14156 viewparams->_443291(); |
14188 if ( dword_506548 ) | 14157 if ( dword_506548 ) |
14189 viewparams->_443249(); | 14158 viewparams->_443249(); |
14190 if ( dword_506540 ) | 14159 if ( dword_506540 ) |
14191 viewparams->_443219(); | 14160 viewparams->_443219(); |
14192 if ( dword_50653C ) | 14161 if ( dword_50653C ) |
14193 viewparams->_443231(); | 14162 viewparams->_443231(); |
14194 if ( dword_506538 ) | 14163 if ( dword_506538 ) |
14195 viewparams->_44323D(); | 14164 viewparams->_44323D(); |
14196 //v6 = dword_506534; | |
14197 if ( dword_506534 ) | 14165 if ( dword_506534 ) |
14198 { | |
14199 viewparams->_443225(); | 14166 viewparams->_443225(); |
14200 //v6 = dword_506534; | 14167 |
14201 } | |
14202 if ( dword_506548 | dword_506544 | dword_506540 | dword_50653C | dword_506538 | dword_506534 ) | 14168 if ( dword_506548 | dword_506544 | dword_506540 | dword_50653C | dword_506538 | dword_506534 ) |
14203 pAudioPlayer->PlaySound(SOUND_Button2, 0, 0, -1, 0, 0, 0, 0); | 14169 pAudioPlayer->PlaySound(SOUND_Button2, 0, 0, -1, 0, 0, 0, 0); |
14204 dword_506548 = 0; | 14170 dword_506548 = 0; |
14205 dword_506544 = 0; | 14171 dword_506544 = 0; |
14206 dword_506534 = 0; | 14172 dword_506534 = 0; |
14207 dword_506538 = 0; | 14173 dword_506538 = 0; |
14208 dword_50653C = 0; | 14174 dword_50653C = 0; |
14209 dword_506540 = 0; | 14175 dword_506540 = 0; |
14210 DrawBook_Map_sub(97, 49, 361, 313, 0); | 14176 DrawBook_Map_sub(97, 49, 361, 313, 0); |
14211 pRenderer->DrawTextureTransparent(75, 22, pTexture_mapbordr); | 14177 pRenderer->DrawTextureTransparent(75, 22, pTexture_mapbordr); |
14212 v22.uFrameWidth = 460; | 14178 map_window.uFrameWidth = 460; |
14213 v22.uFrameHeight = 344; | 14179 map_window.uFrameHeight = 344; |
14214 v22.uFrameX = 8; | 14180 map_window.uFrameX = 8; |
14215 v22.uFrameY = 8; | 14181 map_window.uFrameY = 8; |
14216 v22.uFrameZ = 467; | 14182 map_window.uFrameZ = 467; |
14217 v22.uFrameW = 467; | 14183 map_window.uFrameW = 467; |
14218 v7 = pMapStats->GetMapInfo(pCurrentMapName); | 14184 map_id = pMapStats->GetMapInfo(pCurrentMapName); |
14219 if ( v7 ) | 14185 if ( map_id ) |
14220 v22.DrawTitleText(pBook2Font, 0xFFFFFFF2u, 0xCu, 0, pMapStats->pInfos[v7].pName, 3u); | 14186 map_window.DrawTitleText(pBook2Font, -14, 12, 0, pMapStats->pInfos[map_id].pName, 3); |
14221 v22.uFrameX = 0; | 14187 map_window.uFrameX = 0; |
14222 sprintf(Str, pGlobalTXT_LocalizationStrings[659], pParty->vPosition.x, pParty->vPosition.y); | 14188 sprintf(party_coord, pGlobalTXT_LocalizationStrings[659], pParty->vPosition.x, pParty->vPosition.y); //"x: %d y: %d" |
14223 return v22.DrawTitleText(pFontComic, 0, 0x140u, 0, Str, 0); | 14189 map_window.DrawTitleText(pFontComic, 0, 320, 0, party_coord, 0); |
14224 } | 14190 } |
14225 | 14191 |
14226 | 14192 |
14227 //----- (00413CC6) -------------------------------------------------------- | 14193 //----- (00413CC6) -------------------------------------------------------- |
14228 void __thiscall SellectDrawBook(unsigned int uBook) | 14194 void __thiscall SellectDrawBook(unsigned int uBook) |
14285 int a5; // [sp+68h] [bp-4h]@1 | 14251 int a5; // [sp+68h] [bp-4h]@1 |
14286 | 14252 |
14287 v0 = pParty->uCurrentHour; | 14253 v0 = pParty->uCurrentHour; |
14288 v6 = pMapStats->GetMapInfo(pCurrentMapName); | 14254 v6 = pMapStats->GetMapInfo(pCurrentMapName); |
14289 a5 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0x4Bu, 0x4Bu, 0x4Bu); | 14255 a5 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0x4Bu, 0x4Bu, 0x4Bu); |
14290 pRenderer->DrawTextureIndexed(pViewport->uViewportX, pViewport->uViewportY, pTextures_5064A0[13]); | 14256 pRenderer->DrawTextureIndexed(pViewport->uViewportX, pViewport->uViewportY, pSpellBookPagesTextr_13); |
14291 v7 = (unsigned __int8)pDayMoonPhase[pParty->uDaysPlayed]; | 14257 v7 = (unsigned __int8)pDayMoonPhase[pParty->uDaysPlayed]; |
14292 if ( (signed int)v0 <= 12 ) | 14258 if ( (signed int)v0 <= 12 ) |
14293 { | 14259 { |
14294 if ( !v0 ) | 14260 if ( !v0 ) |
14295 v0 = 12; | 14261 v0 = 12; |