diff GUI/UI/UiGame.cpp @ 2547:fed97f15d1e1

* SaveLoad * QuickReference * Modal * Character
author a.parshin
date Tue, 12 May 2015 01:45:31 +0200
parents 4087cbc62706
children f2a8ed07e921
line wrap: on
line diff
--- a/GUI/UI/UiGame.cpp	Mon May 11 17:45:02 2015 +0200
+++ b/GUI/UI/UiGame.cpp	Tue May 12 01:45:31 2015 +0200
@@ -37,6 +37,7 @@
 #include "GUI/GUIFont.h"
 #include "GUI/UI/UIHouses.h"
 #include "GUI/UI/UIGame.h"
+#include "GUI/UI/UICharacter.h"
 
 #include "Media/Audio/AudioPlayer.h"
 
@@ -563,7 +564,7 @@
       uActiveCharacter = uPlayerID;
       return;
     }
-    pGUIWindow_CurrentMenu = CharacterUI_Initialize(SCREEN_CHARACTERS);
+    pGUIWindow_CurrentMenu = new GUIWindow_CharacterRecord(uActiveCharacter, SCREEN_CHARACTERS);//CharacterUI_Initialize(SCREEN_CHARACTERS);
     return;
   }
   if ( current_screen_type == SCREEN_SPELL_BOOK )
@@ -623,7 +624,7 @@
   {
     __debugbreak(); // fix indexing
     current_character_screen_window = WINDOW_CharacterWindow_Inventory;
-    pGUIWindow_CurrentMenu = CharacterUI_Initialize(SCREEN_E);
+    pGUIWindow_CurrentMenu = new GUIWindow_CharacterRecord(uActiveCharacter, SCREEN_E);//CharacterUI_Initialize(SCREEN_E);
     return;
   }
 }
@@ -1331,119 +1332,6 @@
   window->DrawText(pFontArrus, 14, 114, 0, pTmpBuf.data(), 0, 0, 0);
 }
 
-//----- (0041A57E) --------------------------------------------------------
-void GameUI_QuickRef_Draw()
-{
-  unsigned int pTextColor; // eax@7
-  unsigned int pX; // [sp+14h] [bp-18h]@2
-  unsigned int pY; // edi@9
-  int pSkillsCount; // ecx@27
-  const char *pText; // eax@38
-  int pFontHeight; // [sp+18h] [bp-14h]@1
-
-  pRenderer->DrawTextureIndexed(8, 8, pIcons_LOD->LoadTexturePtr("quikref", TEXTURE_16BIT_PALETTE));
-  pFontHeight = LOBYTE(pFontArrus->uFontHeight) + 1;
-  for ( uint i = 0; i < 4; ++i )
-  {
-    Player* player = &pParty->pPlayers[i];
-    pX = 94 * i + 89;
-    if ( i == 0 )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, 18, 0, pGlobalTXT_LocalizationStrings[149], 60, 0);//Name
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 94 * i + 89, 18, ui_character_header_text_color, player->pName, 84, 0);
-    if ( i == 0 )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, 47, 0, pGlobalTXT_LocalizationStrings[131], 60, 0); //Уров.
-    sprintf(pTmpBuf.data(), "%lu", player->GetActualLevel());
-    if ( player->GetActualLevel() <= player->GetBaseLevel())
-      pTextColor = player->GetExperienceDisplayColor();
-    else
-      pTextColor = ui_character_bonus_text_color;
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, 47, pTextColor, pTmpBuf.data(), 84, 0);
-    pY = pFontHeight + 47;
-    if ( i == 0 )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pFontHeight + 47, 0, pGlobalTXT_LocalizationStrings[41], 60, 0);//Класс
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, 0, pClassNames[player->classType], 84, 0);
-    pY = pFontHeight + pY;
-    if ( i == 0 )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[107], 60, 0);//Здор.
-    sprintf(pTmpBuf.data(), "%d", player->sHealth);
-    pTextColor = UI_GetHealthManaAndOtherQualitiesStringColor(player->sHealth, player->GetMaxHealth());
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, pTextColor, pTmpBuf.data(), 84, 0);
-    pY = pFontHeight + pY;
-    if ( i == 0 )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[209], 60, 0);//Мана
-    sprintf(pTmpBuf.data(), "%d", player->sMana);
-    pTextColor = UI_GetHealthManaAndOtherQualitiesStringColor(player->sMana, player->GetMaxMana());
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, pTextColor, pTmpBuf.data(), 84, 0);
-    pY = pFontHeight + pY;
-    if ( i == 0 )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[0], 60, 0);//Класс брони
-    sprintf(pTmpBuf.data(), "%d", player->GetActualAC());
-    pTextColor = UI_GetHealthManaAndOtherQualitiesStringColor(player->GetActualAC(), player->GetBaseAC());
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, pTextColor, pTmpBuf.data(), 84, 0);
-    pY = pFontHeight + pY;
-    if ( !i )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[18], 60, 0);//Атака
-    sprintf(pTmpBuf.data(), "%+d", player->GetActualAttack(false));
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, 0, pTmpBuf.data(), 84, 0);
-    pY = pFontHeight + pY;
-    if ( !i )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[66], 60, 0);//Повр.
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, 0, player->GetMeleeDamageString(), 84, 0);
-    pY = pFontHeight + pY;
-    if ( !i )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[203], 60, 0);// Стрелять
-    sprintf(pTmpBuf.data(), "%+d", player->GetRangedAttack());
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, 0, pTmpBuf.data(), 84, 0);
-    pY = pFontHeight + pY;
-    if ( !i )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[66], 60, 0);//Повр.
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, 0, player->GetRangedDamageString(), 84, 0);
-    pY = pFontHeight + pY;
-    if ( !i )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[205], 60, 0);//Навыки
-    pSkillsCount = 0;
-    for ( uint j = 0; j <= 36; ++j )
-    {
-      if ( player->pActiveSkills[j] )
-      ++pSkillsCount;
-    }
-    sprintf(pTmpBuf.data(), "%lu", pSkillsCount);
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, 0, pTmpBuf.data(), 84, 0);
-    pY = pFontHeight + pY;
-    if ( !i )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[168], 60, 0);//Очки
-    sprintf(pTmpBuf.data(), "%lu", player->uSkillPoints);
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, player->uSkillPoints ? ui_character_bonus_text_color : ui_character_default_text_color, pTmpBuf.data(), 84, 0);
-    pY = pFontHeight + pY;
-    if ( !i )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[45], 60, 0);//Сост.
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, pTextColor, aCharacterConditionNames[player->GetMajorConditionIdx()], 84, 0);
-    pY = pFontHeight + pY;
-    if ( !i )
-      pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, 22, pY, 0, pGlobalTXT_LocalizationStrings[170], 60, 0);//Б.Прим.
-    if (player->uQuickSpell)
-      pText = pSpellStats->pInfos[player->uQuickSpell].pShortName;
-    else
-      pText = pGlobalTXT_LocalizationStrings[153];//Нет
-    pGUIWindow_CurrentMenu->DrawTextInRect(pFontArrus, pX, pY, 0, pText, 84, 0);
-  }
-
-  if ( pParty->GetPartyReputation() >= 0 )
-  {
-    if ( pParty->GetPartyReputation() <= 5 )
-      pTextColor = ui_character_default_text_color;
-    else
-      pTextColor = ui_character_bonus_text_color_neg;
-  }
-  else
-    pTextColor = ui_character_bonus_text_color;
-
-  sprintf(pTmpBuf.data(), "%s: \f%05d%s\f00000", pGlobalTXT_LocalizationStrings[180], pTextColor, GetReputationString(pParty->GetPartyReputation()));//Reputation
-  pGUIWindow_CurrentMenu->DrawText(pFontArrus, 22, 323, 0, pTmpBuf.data(), 0, 0, 0);
-  sprintf(pTmpBuf.data(), "\r261%s: %d", pGlobalTXT_LocalizationStrings[84], pParty->GetPartyFame());// Fame Слава
-  pGUIWindow_CurrentMenu->DrawText(pFontArrus, 0, 323, 0, pTmpBuf.data(), 0, 0, 0);
-}
-
 //----- (0041AD6E) --------------------------------------------------------
 void GameUI_DrawRightPanelItems()
 {