comparison UI/UIPopup.cpp @ 2216:3f375342de12

window->GetWidth() continue
author Ritor1
date Sat, 15 Feb 2014 16:00:19 +0600
parents 70b63fe6587c
children aff7a7b072b7
comparison
equal deleted inserted replaced
2215:e9625ad08541 2216:3f375342de12
423 } 423 }
424 // 4E455C: using guessed type int dword_4E455C; 424 // 4E455C: using guessed type int dword_4E455C;
425 // 506128: using guessed type int areWeLoadingTexture; 425 // 506128: using guessed type int areWeLoadingTexture;
426 426
427 //----- (0041E360) -------------------------------------------------------- 427 //----- (0041E360) --------------------------------------------------------
428 void MonsterPopup_Draw(unsigned int uActorID, GUIWindow *window) 428 void MonsterPopup_Draw(unsigned int uActorID, GUIWindow *pWindow)
429 { 429 {
430 int v8; // eax@4 430 int v8; // eax@4
431 unsigned __int16 v9; // dx@4 431 unsigned __int16 v9; // dx@4
432 SpriteFrame *v10; // edi@17 432 SpriteFrame *v10; // edi@17
433 unsigned int v18; // ecx@19 433 unsigned int v18; // ecx@19
510 } 510 }
511 v10 = pSpriteFrameTable->GetFrame( pActors[uActorID].pSpriteIDs[pMonsterInfoUI_Doll.uCurrentActionAnimation], pMonsterInfoUI_Doll.uCurrentActionTime); 511 v10 = pSpriteFrameTable->GetFrame( pActors[uActorID].pSpriteIDs[pMonsterInfoUI_Doll.uCurrentActionAnimation], pMonsterInfoUI_Doll.uCurrentActionTime);
512 v106.pTarget = pRenderer->pTargetSurface; 512 v106.pTarget = pRenderer->pTargetSurface;
513 v106.pTargetZ = pRenderer->pActiveZBuffer; 513 v106.pTargetZ = pRenderer->pActiveZBuffer;
514 v106.uTargetPitch = pRenderer->uTargetSurfacePitch; 514 v106.uTargetPitch = pRenderer->uTargetSurfacePitch;
515 v106.uViewportX = window->uFrameX + 13; 515 v106.uViewportX = pWindow->uFrameX + 13;
516 v106.uViewportY = window->uFrameY + 52; 516 v106.uViewportY = pWindow->uFrameY + 52;
517 v106.uViewportW = (window->uFrameY + 52) + 128; 517 v106.uViewportW = (pWindow->uFrameY + 52) + 128;
518 v106.uViewportZ = v106.uViewportX + 128; 518 v106.uViewportZ = v106.uViewportX + 128;
519 v106.uScreenSpaceX = (signed int)(v106.uViewportX + 128 + v106.uViewportX) / 2; 519 v106.uScreenSpaceX = (signed int)(v106.uViewportX + 128 + v106.uViewportX) / 2;
520 v106._screenspace_x_scaler_packedfloat = 65536; 520 v106._screenspace_x_scaler_packedfloat = 65536;
521 v106._screenspace_y_scaler_packedfloat = 65536; 521 v106._screenspace_y_scaler_packedfloat = 65536;
522 v106.uScreenSpaceY = v115 + (window->uFrameY + 52) + pSprites_LOD->pSpriteHeaders[v10->pHwSpriteIDs[0]].uHeight; 522 v106.uScreenSpaceY = v115 + (pWindow->uFrameY + 52) + pSprites_LOD->pSpriteHeaders[v10->pHwSpriteIDs[0]].uHeight;
523 v106.pPalette = PaletteManager::Get_Dark_or_Red_LUT(v10->uPaletteIndex, 0, 1); 523 v106.pPalette = PaletteManager::Get_Dark_or_Red_LUT(v10->uPaletteIndex, 0, 1);
524 v106.sZValue = 0; 524 v106.sZValue = 0;
525 v106.uFlags = 0; 525 v106.uFlags = 0;
526 pRenderer->SetRasterClipRect(0, 0, 639, 479); 526 pRenderer->SetRasterClipRect(0, 0, window->GetWidth() - 1, window->GetHeight() - 1);
527 pRenderer->RasterLine2D(v106.uViewportX - 1, v106.uViewportY - 1, v106.uViewportX + 129, v106.uViewportY - 1, Color16(0xE1u, 255, 0x9Bu));//горизонтальная верхняя линия 527 pRenderer->RasterLine2D(v106.uViewportX - 1, v106.uViewportY - 1, v106.uViewportX + 129, v106.uViewportY - 1, Color16(0xE1u, 255, 0x9Bu));//горизонтальная верхняя линия
528 pRenderer->RasterLine2D(v106.uViewportX - 1, v106.uViewportW + 1, v106.uViewportX - 1, v106.uViewportY - 1, Color16(0xE1u, 255, 0x9Bu));//горизонтальная нижняя линия 528 pRenderer->RasterLine2D(v106.uViewportX - 1, v106.uViewportW + 1, v106.uViewportX - 1, v106.uViewportY - 1, Color16(0xE1u, 255, 0x9Bu));//горизонтальная нижняя линия
529 pRenderer->RasterLine2D(v106.uViewportX + 129, v106.uViewportW + 1, v106.uViewportX - 1, v106.uViewportW + 1, Color16(0xE1u, 255, 0x9Bu));//левая вертикальная линия 529 pRenderer->RasterLine2D(v106.uViewportX + 129, v106.uViewportW + 1, v106.uViewportX - 1, v106.uViewportW + 1, Color16(0xE1u, 255, 0x9Bu));//левая вертикальная линия
530 pRenderer->RasterLine2D(v106.uViewportX + 129, v106.uViewportY - 1, v106.uViewportX + 129, v106.uViewportW + 1, Color16(0xE1u, 255, 0x9Bu));//правая вертикальная линия 530 pRenderer->RasterLine2D(v106.uViewportX + 129, v106.uViewportY - 1, v106.uViewportX + 129, v106.uViewportW + 1, Color16(0xE1u, 255, 0x9Bu));//правая вертикальная линия
531 //if ( pRenderer->pRenderD3D ) 531 //if ( pRenderer->pRenderD3D )
660 if ( pActors[uActorID].dword_000334_unique_name ) 660 if ( pActors[uActorID].dword_000334_unique_name )
661 strncpy(pTmpBuf.data(), pMonsterStats->pPlaceStrings[pActors[uActorID].dword_000334_unique_name], 2000); 661 strncpy(pTmpBuf.data(), pMonsterStats->pPlaceStrings[pActors[uActorID].dword_000334_unique_name], 2000);
662 else 662 else
663 strncpy(pTmpBuf.data(), pMonsterStats->pInfos[pActors[uActorID].pMonsterInfo.uID].pName, 2000); 663 strncpy(pTmpBuf.data(), pMonsterStats->pInfos[pActors[uActorID].pMonsterInfo.uID].pName, 2000);
664 } 664 }
665 window->DrawTitleText(pFontComic, 0, 0xCu, Color16(0xFFu, 0xFFu, 0x9Bu), pTmpBuf.data(), 3); 665 pWindow->DrawTitleText(pFontComic, 0, 0xCu, Color16(0xFFu, 0xFFu, 0x9Bu), pTmpBuf.data(), 3);
666 //health bar 666 //health bar
667 Actor::DrawHealthBar(&pActors[uActorID], window); 667 Actor::DrawHealthBar(&pActors[uActorID], pWindow);
668 668
669 normal_level = 0; 669 normal_level = 0;
670 expert_level = 0; 670 expert_level = 0;
671 master_level = 0; 671 master_level = 0;
672 grandmaster_level = 0; 672 grandmaster_level = 0;
732 master_level = 1;// 732 master_level = 1;//
733 grandmaster_level = 1;// 733 grandmaster_level = 1;//
734 for_effects = 1; 734 for_effects = 1;
735 } 735 }
736 736
737 window->DrawText(pFontSmallnum, 12, 196, Color16(0xE1u, 255, 0x9Bu), pGlobalTXT_LocalizationStrings[631], 0, 0, 0);//Effects 737 pWindow->DrawText(pFontSmallnum, 12, 196, Color16(0xE1u, 255, 0x9Bu), pGlobalTXT_LocalizationStrings[631], 0, 0, 0);//Effects
738 if ( !for_effects && false) 738 if ( !for_effects && false)
739 window->DrawText(pFontSmallnum, 28, LOBYTE(pFontSmallnum->uFontHeight) + 193, Color16(0xE1u, 255, 0x9Bu), pGlobalTXT_LocalizationStrings[630], 0, 0, 0);//? 739 pWindow->DrawText(pFontSmallnum, 28, LOBYTE(pFontSmallnum->uFontHeight) + 193, Color16(0xE1u, 255, 0x9Bu), pGlobalTXT_LocalizationStrings[630], 0, 0, 0);//?
740 else 740 else
741 { 741 {
742 pText = ""; 742 pText = "";
743 pTextHeight = LOBYTE(pFontSmallnum->uFontHeight) + 193; 743 pTextHeight = LOBYTE(pFontSmallnum->uFontHeight) + 193;
744 for ( uint i = 1; i <= 21; ++i ) 744 for ( uint i = 1; i <= 21; ++i )
832 pText = ""; 832 pText = "";
833 break; 833 break;
834 } 834 }
835 if ( _stricmp(pText, "" )) 835 if ( _stricmp(pText, "" ))
836 { 836 {
837 window->DrawText(pFontSmallnum, 28, pTextHeight, GetSpellColor(pTextColorID), pText, 0, 0, 0); 837 pWindow->DrawText(pFontSmallnum, 28, pTextHeight, GetSpellColor(pTextColorID), pText, 0, 0, 0);
838 pTextHeight = pTextHeight + *(char *)((int)pFontSmallnum + 5) - 3; 838 pTextHeight = pTextHeight + *(char *)((int)pFontSmallnum + 5) - 3;
839 } 839 }
840 } 840 }
841 } 841 }
842 if ( !_stricmp(pText,"" )) 842 if ( !_stricmp(pText,"" ))
843 window->DrawText(pFontSmallnum, 28, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pGlobalTXT_LocalizationStrings[153], 0, 0, 0);//Нет 843 pWindow->DrawText(pFontSmallnum, 28, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pGlobalTXT_LocalizationStrings[153], 0, 0, 0);//Нет
844 } 844 }
845 845
846 if ( normal_level ) 846 if ( normal_level )
847 { 847 {
848 sprintf(pTmpBuf.data(), "%s\f%05u\t100%d\n", pGlobalTXT_LocalizationStrings[108], 0, pActors[uActorID].pMonsterInfo.uHP); 848 sprintf(pTmpBuf.data(), "%s\f%05u\t100%d\n", pGlobalTXT_LocalizationStrings[108], 0, pActors[uActorID].pMonsterInfo.uHP);
849 window->DrawText(pFontSmallnum, 150, (int)v106.uViewportY, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 849 pWindow->DrawText(pFontSmallnum, 150, (int)v106.uViewportY, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
850 pTextHeight = v106.uViewportY + LOBYTE(pFontSmallnum->uFontHeight) - 3; 850 pTextHeight = v106.uViewportY + LOBYTE(pFontSmallnum->uFontHeight) - 3;
851 sprintf(pTmpBuf.data(), "%s\f%05u\t100%d\n", pGlobalTXT_LocalizationStrings[12], 0, pActors[uActorID].pMonsterInfo.uAC);//Armor Class 851 sprintf(pTmpBuf.data(), "%s\f%05u\t100%d\n", pGlobalTXT_LocalizationStrings[12], 0, pActors[uActorID].pMonsterInfo.uAC);//Armor Class
852 } 852 }
853 else 853 else
854 { 854 {
855 sprintf(pTmpBuf.data(), "%s\f%05u\t100%s\n", pGlobalTXT_LocalizationStrings[108], 0, pGlobalTXT_LocalizationStrings[630]);//? - [630] actually displays a question mark 855 sprintf(pTmpBuf.data(), "%s\f%05u\t100%s\n", pGlobalTXT_LocalizationStrings[108], 0, pGlobalTXT_LocalizationStrings[630]);//? - [630] actually displays a question mark
856 window->DrawText(pFontSmallnum, 150, (int)v106.uViewportY, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 856 pWindow->DrawText(pFontSmallnum, 150, (int)v106.uViewportY, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
857 pTextHeight = v106.uViewportY + LOBYTE(pFontSmallnum->uFontHeight) - 3; 857 pTextHeight = v106.uViewportY + LOBYTE(pFontSmallnum->uFontHeight) - 3;
858 sprintf(pTmpBuf.data(), "%s\f%05u\t100%s\n", pGlobalTXT_LocalizationStrings[12], 0, pGlobalTXT_LocalizationStrings[630]);//? - [630] actually displays a question mark 858 sprintf(pTmpBuf.data(), "%s\f%05u\t100%s\n", pGlobalTXT_LocalizationStrings[12], 0, pGlobalTXT_LocalizationStrings[630]);//? - [630] actually displays a question mark
859 } 859 }
860 window->DrawText(pFontSmallnum, 150, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 860 pWindow->DrawText(pFontSmallnum, 150, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
861 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 6 + LOBYTE(pFontSmallnum->uFontHeight); 861 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 6 + LOBYTE(pFontSmallnum->uFontHeight);
862 862
863 content[0] = pGlobalTXT_LocalizationStrings[87]; 863 content[0] = pGlobalTXT_LocalizationStrings[87];
864 content[1] = pGlobalTXT_LocalizationStrings[6]; 864 content[1] = pGlobalTXT_LocalizationStrings[6];
865 content[2] = pGlobalTXT_LocalizationStrings[240]; 865 content[2] = pGlobalTXT_LocalizationStrings[240];
873 content[10] = pGlobalTXT_LocalizationStrings[54]; 873 content[10] = pGlobalTXT_LocalizationStrings[54];
874 874
875 if ( expert_level ) 875 if ( expert_level )
876 { 876 {
877 sprintf(pTmpBuf.data(), "%s\f%05u\t080%s\n", pGlobalTXT_LocalizationStrings[18], 0, content[pActors[uActorID].pMonsterInfo.uAttack1Type]);//Attack 877 sprintf(pTmpBuf.data(), "%s\f%05u\t080%s\n", pGlobalTXT_LocalizationStrings[18], 0, content[pActors[uActorID].pMonsterInfo.uAttack1Type]);//Attack
878 window->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 878 pWindow->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
879 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 879 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
880 if ( pActors[uActorID].pMonsterInfo.uAttack1DamageBonus ) 880 if ( pActors[uActorID].pMonsterInfo.uAttack1DamageBonus )
881 sprintf(pTmpBuf.data(), "%s\f%05u\t080%dd%d+%d\n", pGlobalTXT_LocalizationStrings[53], 881 sprintf(pTmpBuf.data(), "%s\f%05u\t080%dd%d+%d\n", pGlobalTXT_LocalizationStrings[53],
882 0, pActors[uActorID].pMonsterInfo.uAttack1DamageDiceRolls, pActors[uActorID].pMonsterInfo.uAttack1DamageDiceSides, pActors[uActorID].pMonsterInfo.uAttack1DamageBonus); 882 0, pActors[uActorID].pMonsterInfo.uAttack1DamageDiceRolls, pActors[uActorID].pMonsterInfo.uAttack1DamageDiceSides, pActors[uActorID].pMonsterInfo.uAttack1DamageBonus);
883 else 883 else
885 0, pActors[uActorID].pMonsterInfo.uAttack1DamageDiceRolls, pActors[uActorID].pMonsterInfo.uAttack1DamageDiceSides); 885 0, pActors[uActorID].pMonsterInfo.uAttack1DamageDiceRolls, pActors[uActorID].pMonsterInfo.uAttack1DamageDiceSides);
886 } 886 }
887 else 887 else
888 { 888 {
889 sprintf(pTmpBuf.data(), "%s\f%05u\t080%s\n", pGlobalTXT_LocalizationStrings[18], 0, pGlobalTXT_LocalizationStrings[630]); 889 sprintf(pTmpBuf.data(), "%s\f%05u\t080%s\n", pGlobalTXT_LocalizationStrings[18], 0, pGlobalTXT_LocalizationStrings[630]);
890 window->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 890 pWindow->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
891 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 891 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
892 sprintf(pTmpBuf.data(), "%s\f%05u\t080%s\n", pGlobalTXT_LocalizationStrings[53], 0, pGlobalTXT_LocalizationStrings[630]); 892 sprintf(pTmpBuf.data(), "%s\f%05u\t080%s\n", pGlobalTXT_LocalizationStrings[53], 0, pGlobalTXT_LocalizationStrings[630]);
893 } 893 }
894 window->DrawText(pFontSmallnum, 150, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 894 pWindow->DrawText(pFontSmallnum, 150, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
895 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 6 + LOBYTE(pFontSmallnum->uFontHeight); 895 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 6 + LOBYTE(pFontSmallnum->uFontHeight);
896 896
897 if ( !master_level ) 897 if ( !master_level )
898 { 898 {
899 sprintf(pTmpBuf.data(), "%s\f%05u\t080%s\n", pGlobalTXT_LocalizationStrings[628], 0, pGlobalTXT_LocalizationStrings[630]);//"Spell" "?" 899 sprintf(pTmpBuf.data(), "%s\f%05u\t080%s\n", pGlobalTXT_LocalizationStrings[628], 0, pGlobalTXT_LocalizationStrings[630]);//"Spell" "?"
900 window->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 900 pWindow->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
901 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 901 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
902 } 902 }
903 else 903 else
904 { 904 {
905 pText = pGlobalTXT_LocalizationStrings[628];//Spell 905 pText = pGlobalTXT_LocalizationStrings[628];//Spell
906 if ( pActors[uActorID].pMonsterInfo.uSpell1ID && pActors[uActorID].pMonsterInfo.uSpell2ID ) 906 if ( pActors[uActorID].pMonsterInfo.uSpell1ID && pActors[uActorID].pMonsterInfo.uSpell2ID )
907 pText = pGlobalTXT_LocalizationStrings[629];//Spells 907 pText = pGlobalTXT_LocalizationStrings[629];//Spells
908 if ( pActors[uActorID].pMonsterInfo.uSpell1ID ) 908 if ( pActors[uActorID].pMonsterInfo.uSpell1ID )
909 { 909 {
910 sprintf(pTmpBuf.data(), "%s\f%05u\t070%s\n", pText, 0, pSpellStats->pInfos[pActors[uActorID].pMonsterInfo.uSpell1ID].pShortName);//"%s\f%05u\t060%s\n" 910 sprintf(pTmpBuf.data(), "%s\f%05u\t070%s\n", pText, 0, pSpellStats->pInfos[pActors[uActorID].pMonsterInfo.uSpell1ID].pShortName);//"%s\f%05u\t060%s\n"
911 window->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 911 pWindow->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
912 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 912 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
913 } 913 }
914 if ( pActors[uActorID].pMonsterInfo.uSpell2ID ) 914 if ( pActors[uActorID].pMonsterInfo.uSpell2ID )
915 { 915 {
916 sprintf(pTmpBuf.data(), "\f%05u\t070%s\n", 0, pSpellStats->pInfos[pActors[uActorID].pMonsterInfo.uSpell2ID].pShortName);//"%s\f%05u\t060%s\n" 916 sprintf(pTmpBuf.data(), "\f%05u\t070%s\n", 0, pSpellStats->pInfos[pActors[uActorID].pMonsterInfo.uSpell2ID].pShortName);//"%s\f%05u\t060%s\n"
917 window->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 917 pWindow->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
918 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 918 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
919 } 919 }
920 if ( !pActors[uActorID].pMonsterInfo.uSpell1ID && !pActors[uActorID].pMonsterInfo.uSpell2ID ) 920 if ( !pActors[uActorID].pMonsterInfo.uSpell1ID && !pActors[uActorID].pMonsterInfo.uSpell2ID )
921 { 921 {
922 sprintf(pTmpBuf.data(), "%s\f%05u\t070%s\n", pGlobalTXT_LocalizationStrings[628], 0, pGlobalTXT_LocalizationStrings[153]);//"%s\f%05u\t060%s\n" 922 sprintf(pTmpBuf.data(), "%s\f%05u\t070%s\n", pGlobalTXT_LocalizationStrings[628], 0, pGlobalTXT_LocalizationStrings[153]);//"%s\f%05u\t060%s\n"
923 window->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 923 pWindow->DrawText(pFontSmallnum, 150, (int)pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
924 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 924 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
925 } 925 }
926 } 926 }
927 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 927 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
928 window->DrawText(pFontSmallnum, 150, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pGlobalTXT_LocalizationStrings[626], 0, 0, 0);//Immune 928 pWindow->DrawText(pFontSmallnum, 150, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pGlobalTXT_LocalizationStrings[626], 0, 0, 0);//Immune
929 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 929 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
930 930
931 string_name[0] = pGlobalTXT_LocalizationStrings[87];//Fire 931 string_name[0] = pGlobalTXT_LocalizationStrings[87];//Fire
932 string_name[1] = pGlobalTXT_LocalizationStrings[6];//Air 932 string_name[1] = pGlobalTXT_LocalizationStrings[6];//Air
933 string_name[2] = pGlobalTXT_LocalizationStrings[240]; 933 string_name[2] = pGlobalTXT_LocalizationStrings[240];
964 pText = pGlobalTXT_LocalizationStrings[627];//Resistant 964 pText = pGlobalTXT_LocalizationStrings[627];//Resistant
965 else 965 else
966 pText = pGlobalTXT_LocalizationStrings[153];//None 966 pText = pGlobalTXT_LocalizationStrings[153];//None
967 } 967 }
968 sprintf(pTmpBuf.data(), "%s\f%05u\t070%s\n", string_name[i], 0, pText); 968 sprintf(pTmpBuf.data(), "%s\f%05u\t070%s\n", string_name[i], 0, pText);
969 window->DrawText(pFontSmallnum, 170, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 969 pWindow->DrawText(pFontSmallnum, 170, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
970 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 970 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
971 } 971 }
972 } 972 }
973 else 973 else
974 { 974 {
975 for ( uint i = 0; i < 10; ++i ) 975 for ( uint i = 0; i < 10; ++i )
976 { 976 {
977 sprintf(pTmpBuf.data(), "%s\f%05u\t070%s\n", string_name[i], 0, pGlobalTXT_LocalizationStrings[630]); // "?" 977 sprintf(pTmpBuf.data(), "%s\f%05u\t070%s\n", string_name[i], 0, pGlobalTXT_LocalizationStrings[630]); // "?"
978 window->DrawText(pFontSmallnum, 170, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0); 978 pWindow->DrawText(pFontSmallnum, 170, pTextHeight, Color16(0xE1u, 255, 0x9Bu), pTmpBuf.data(), 0, 0, 0);
979 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3; 979 pTextHeight = pTextHeight + LOBYTE(pFontSmallnum->uFontHeight) - 3;
980 } 980 }
981 } 981 }
982 //cast spell: Detect life 982 //cast spell: Detect life
983 if ( (signed __int64)pParty->pPartyBuffs[PARTY_BUFF_DETECT_LIFE].uExpireTime > 0 ) 983 if ( (signed __int64)pParty->pPartyBuffs[PARTY_BUFF_DETECT_LIFE].uExpireTime > 0 )
984 { 984 {
985 sprintf(pTmpBuf.data(), "%s: %d", pGlobalTXT_LocalizationStrings[650], pActors[uActorID].sCurrentHP);//Current Hit Points 985 sprintf(pTmpBuf.data(), "%s: %d", pGlobalTXT_LocalizationStrings[650], pActors[uActorID].sCurrentHP);//Current Hit Points
986 pFontSmallnum->GetLineWidth(pTmpBuf.data()); 986 pFontSmallnum->GetLineWidth(pTmpBuf.data());
987 window->DrawTitleText(pFontSmallnum, 0, window->uFrameHeight - LOBYTE(pFontSmallnum->uFontHeight) - 12, 0, pTmpBuf.data(), 3); 987 pWindow->DrawTitleText(pFontSmallnum, 0, pWindow->uFrameHeight - LOBYTE(pFontSmallnum->uFontHeight) - 12, 0, pTmpBuf.data(), 3);
988 } 988 }
989 } 989 }
990 990
991 //----- (00417BB5) -------------------------------------------------------- 991 //----- (00417BB5) --------------------------------------------------------
992 const char *CharacterUI_GetSkillDescText(unsigned int uPlayerID, PLAYER_SKILL_TYPE uPlayerSkillType) 992 const char *CharacterUI_GetSkillDescText(unsigned int uPlayerID, PLAYER_SKILL_TYPE uPlayerSkillType)