changeset 1920:05b433b8cb37

GuildDialog fix and cleared
author Ritor1
date Wed, 23 Oct 2013 12:49:25 +0600
parents 140ca8123384
children f04c2f93dacb
files Items.cpp UI/UIGuilds.cpp UI/UIHouses.cpp
diffstat 3 files changed, 141 insertions(+), 181 deletions(-) [+]
line wrap: on
line diff
--- a/Items.cpp	Wed Oct 23 10:24:38 2013 +0600
+++ b/Items.cpp	Wed Oct 23 12:49:25 2013 +0600
@@ -2428,109 +2428,109 @@
 }
 //----- (004B8E3D) --------------------------------------------------------
 void GenerateStandartShopItems()
-	{
-	signed int item_count; 
-	signed int shop_index; 
-	int treasure_lvl; 
-	int item_class; 
-	int mdf;
+{
+  signed int item_count; 
+  signed int shop_index; 
+  int treasure_lvl; 
+  int item_class; 
+  int mdf;
 
-	shop_index = (signed int)window_SpeakInHouse->ptr_1C;
-	if ( uItemsAmountPerShopType[p2DEvents[shop_index - 1].uType] )
-		{
-	    for (item_count=0; item_count<=uItemsAmountPerShopType[p2DEvents[shop_index - 1].uType]; ++item_count )
-		{
-		   if (shop_index<=14) //weapon shop
-			   {
-			   treasure_lvl = shopWeap_variation_ord[shop_index].treasure_level;
-			   item_class =shopWeap_variation_ord[shop_index].item_class[rand() % 4];
-			   }
-		   else if (shop_index<=28) //armor shop
-			   {
-			   mdf =0;
-			   if (item_count > 3)
-					 ++mdf;// rechek offsets
-			    treasure_lvl = shopArmr_variation_ord[2*(shop_index-15)+mdf].treasure_level;
-				item_class =shopArmr_variation_ord[2*(shop_index-15)+mdf].item_class[rand() % 4];
-			   }
-		   else if (shop_index<=41)  //magic shop
-			   {
-			   treasure_lvl = shopMagic_treasure_lvl[shop_index-28];
-			   item_class = 22;  //misc
-			   }
-		   else if (shop_index<=53) //alchemist shop
-			   {
-			    if (item_count<6)
-					{
-					pParty->StandartItemsInShops[shop_index][item_count].Reset();
-					pParty->StandartItemsInShops[shop_index][item_count].uItemID = 220;  //potion bottle
-					continue;
-					}
-				else
-					{
-					treasure_lvl = shopAlch_treasure_lvl[shop_index-41];
-					item_class = 45;  //reagent
-					}
-			   }
-		   pItemsTable->GenerateItem(treasure_lvl, item_class, &pParty->StandartItemsInShops[shop_index][item_count]);
-		   pParty->StandartItemsInShops[shop_index][item_count].SetIdentified();  //identified
-		}
-		}
-	pParty->InTheShopFlags[shop_index] = 0;
-	}
+  shop_index = (signed int)window_SpeakInHouse->ptr_1C;
+  if ( uItemsAmountPerShopType[p2DEvents[shop_index - 1].uType] )
+  {
+    for (item_count = 0; item_count < uItemsAmountPerShopType[p2DEvents[shop_index - 1].uType]; ++item_count )
+    {
+      if (shop_index <= 14) //weapon shop
+      {
+        treasure_lvl = shopWeap_variation_ord[shop_index].treasure_level;
+        item_class = shopWeap_variation_ord[shop_index].item_class[rand() % 4];
+      }
+      else if (shop_index <= 28) //armor shop
+      {
+        mdf = 0;
+        if (item_count > 3)
+          ++mdf;// rechek offsets
+        treasure_lvl = shopArmr_variation_ord[2*(shop_index - 15) + mdf].treasure_level;
+        item_class = shopArmr_variation_ord[2*(shop_index - 15) + mdf].item_class[rand() % 4];
+      }
+      else if (shop_index <= 41)  //magic shop
+      {
+        treasure_lvl = shopMagic_treasure_lvl[shop_index - 28];
+        item_class = 22;  //misc
+      }
+      else if (shop_index <= 53) //alchemist shop
+      {
+        if (item_count < 6)
+        {
+          pParty->StandartItemsInShops[shop_index][item_count].Reset();
+          pParty->StandartItemsInShops[shop_index][item_count].uItemID = 220;  //potion bottle
+          continue;
+        }
+        else
+        {
+          treasure_lvl = shopAlch_treasure_lvl[shop_index - 41];
+          item_class = 45;  //reagent
+        }
+      }
+      pItemsTable->GenerateItem(treasure_lvl, item_class, &pParty->StandartItemsInShops[shop_index][item_count]);
+      pParty->StandartItemsInShops[shop_index][item_count].SetIdentified();  //identified
+    }
+  }
+  pParty->InTheShopFlags[shop_index] = 0;
+}
 
 //----- (004B8F94) --------------------------------------------------------
 void  GenerateSpecialShopItems()
-	{
-	signed int item_count; 
-	signed int shop_index; 
-	int treasure_lvl; 
-	int item_class; 
-	int mdf;
+{
+  signed int item_count; 
+  signed int shop_index; 
+  int treasure_lvl; 
+  int item_class; 
+  int mdf;
 
-	shop_index = (signed int)window_SpeakInHouse->ptr_1C;
-	if ( uItemsAmountPerShopType[p2DEvents[shop_index - 1].uType] )
-		{
-		for (item_count=0; item_count<=uItemsAmountPerShopType[p2DEvents[shop_index - 1].uType]; ++item_count )
-			{
-			if (shop_index<=14) //weapon shop
-				{
-				treasure_lvl = shopWeap_variation_spc[shop_index].treasure_level;
-				item_class =  shopWeap_variation_spc[shop_index].item_class[rand() % 4];
-				}
-			else if (shop_index<=28) //armor shop
-				{
-				mdf =0;
-				if (item_count > 3)
-					++mdf;
-				treasure_lvl = shopArmr_variation_spc[2*(shop_index-15)+mdf].treasure_level;
-				item_class =shopArmr_variation_spc[2*(shop_index-15)+mdf].item_class[rand() % 4];
-				}
-			else if (shop_index<=41)  //magic shop
-				{
-				treasure_lvl = shopMagicSpc_treasure_lvl[shop_index-28];
-				item_class = 22;  //misc
-				}
-			else if (shop_index<=53) //alchemist shop
-				{
-				if (item_count<6)
-					{
-					pParty->SpecialItemsInShops[shop_index][item_count].Reset();
-					pParty->SpecialItemsInShops[shop_index][item_count].uItemID = rand() % 32 + 740;  //mscrool
-					continue;
-					}
-				else
-					{
-					treasure_lvl = shopAlchSpc_treasure_lvl[shop_index-41];
-					item_class = 44;  //potion
-					}
-				}
-			pItemsTable->GenerateItem(treasure_lvl, item_class, &pParty->SpecialItemsInShops[shop_index][item_count]);
-			pParty->SpecialItemsInShops[shop_index][item_count].SetIdentified();  //identified
-			}
-		}
-	pParty->InTheShopFlags[shop_index] = 0;
-	}
+  shop_index = (signed int)window_SpeakInHouse->ptr_1C;
+  if ( uItemsAmountPerShopType[p2DEvents[shop_index - 1].uType] )
+  {
+    for ( item_count = 0; item_count < uItemsAmountPerShopType[p2DEvents[shop_index - 1].uType]; ++item_count )
+    {
+      if (shop_index <= 14) //weapon shop
+      {
+        treasure_lvl = shopWeap_variation_spc[shop_index].treasure_level;
+        item_class =  shopWeap_variation_spc[shop_index].item_class[rand() % 4];
+      }
+      else if (shop_index <= 28) //armor shop
+      {
+        mdf = 0;
+        if (item_count > 3)
+          ++mdf;
+        treasure_lvl = shopArmr_variation_spc[2*(shop_index - 15) + mdf].treasure_level;
+        item_class = shopArmr_variation_spc[2*(shop_index - 15) + mdf].item_class[rand() % 4];
+      }
+      else if (shop_index <= 41)  //magic shop
+      {
+        treasure_lvl = shopMagicSpc_treasure_lvl[shop_index - 28];
+        item_class = 22;  //misc
+      }
+      else if (shop_index <= 53) //alchemist shop
+      {
+        if (item_count < 6)
+        {
+          pParty->SpecialItemsInShops[shop_index][item_count].Reset();
+          pParty->SpecialItemsInShops[shop_index][item_count].uItemID = rand() % 32 + 740;  //mscrool
+          continue;
+        }
+        else
+        {
+          treasure_lvl = shopAlchSpc_treasure_lvl[shop_index - 41];
+          item_class = 44;  //potion
+        }
+      }
+      pItemsTable->GenerateItem(treasure_lvl, item_class, &pParty->SpecialItemsInShops[shop_index][item_count]);
+      pParty->SpecialItemsInShops[shop_index][item_count].SetIdentified();  //identified
+    }
+  }
+  pParty->InTheShopFlags[shop_index] = 0;
+}
 
 
 //----- (00450218) --------------------------------------------------------
--- a/UI/UIGuilds.cpp	Wed Oct 23 10:24:38 2013 +0600
+++ b/UI/UIGuilds.cpp	Wed Oct 23 12:49:25 2013 +0600
@@ -16,46 +16,20 @@
 void GuildDialog()
 {
   signed int base_teach_price; // ebx@1
-  int v3; // edi@6
-  int result; // eax@11
   int v6; // esi@13
   signed int v7; // esi@17
   int v8; // esi@22
-  signed int v9; // ecx@22
-  char *v10; // eax@22
   const char *statusbar_string; // ecx@26
-  POINT *v12; // esi@30
   int v13; // ecx@30
   ItemGen *v15; // ST18_4@31
   int v17; // eax@31
   char *v18; // edx@31
-  int pActiveItem; // esi@35
-  int v24; // eax@39
-  int v25; // eax@40
   int v26; // ecx@47
   GUIButton *pButton; // eax@49
   int pTextHeight; // eax@55
   unsigned __int16 pTextColor; // ax@55
-  int v35; // eax@58
-  const char *v36; // ST20_4@61
-  unsigned __int16 v37; // ST1C_2@61
-  int v40; // [sp-14h] [bp-300h]@31
-  int v41; // [sp-10h] [bp-2FCh]@31
-  unsigned __int16 v42; // [sp-Ch] [bp-2F8h]@31
-  char *v43; // [sp-8h] [bp-2F4h]@31
-  unsigned int v44; // [sp-4h] [bp-2F0h]@31
-  char Dest[100]; // [sp+Ch] [bp-2E0h]@3
-  char v46[100]; // [sp+70h] [bp-27Ch]@3
-  char v47[100]; // [sp+D4h] [bp-218h]@3
-  char v48[100]; // [sp+138h] [bp-1B4h]@3
-  char v49[100]; // [sp+19Ch] [bp-150h]@3
-  POINT v50; // [sp+264h] [bp-88h]@30
-  POINT v51; // [sp+26Ch] [bp-80h]@30
+  POINT cursor; // [sp+26Ch] [bp-80h]@30
   GUIWindow working_window; // [sp+274h] [bp-78h]@1
-  signed int v53; // [sp+27Ch] [bp-70h]@1
-  signed int v54; // [sp+284h] [bp-68h]@1
-  int pColorWhite; // [sp+2CCh] [bp-20h]@1
-  int pColorYellow; // [sp+2D0h] [bp-1Ch]@1
   int v58; // [sp+2D4h] [bp-18h]@1
   bool pSkillFlag; // [sp+2DCh] [bp-10h]@35
   int v61; // [sp+2E0h] [bp-Ch]@35
@@ -68,24 +42,17 @@
   working_window.uFrameX = 483;
   working_window.uFrameWidth = 148;
   working_window.uFrameZ = 334;
-  pColorWhite = TargetColor(0xFFu, 0xFFu, 0xFFu);
-  pColorYellow = TargetColor(0xFFu, 0xFFu, 0x9Bu);
   base_teach_price = (signed __int64)(p2DEvents[(unsigned int)window_SpeakInHouse->ptr_1C - 1].fPriceMultiplier * 500.0);
   pPrice = base_teach_price * (100 - pPlayers[uActiveCharacter]->GetMerchant()) / 100;
   if ( pPrice < base_teach_price / 3 )
     pPrice = base_teach_price / 3;
-  strcpy(Dest, "");
-  strcpy(v46, "");
-  strcpy(v47, "");
-  strcpy(v48, "");
-  strcpy(v49, "");
   if ( dialog_menu_id == HOUSE_DIALOGUE_MAIN )
   {
     if ( !(unsigned __int16)_449B57_test_bit((unsigned __int8 *)pPlayers[uActiveCharacter]->_achieved_awards_bits,
-            guild_mambership_flags[(unsigned int)window_SpeakInHouse->ptr_1C-139]) )
+            guild_mambership_flags[(unsigned int)window_SpeakInHouse->ptr_1C - 139]) )
     { //you must me member
       pTextHeight = pFontArrus->CalcTextHeight(pNPCTopics[121].pText, &working_window, 0, 0);
-      working_window.DrawTitleText(pFontArrus, 0, (212 - pTextHeight) / 2 + 101, pColorYellow, pNPCTopics[121].pText, 3);
+      working_window.DrawTitleText(pFontArrus, 0, (212 - pTextHeight) / 2 + 101, TargetColor(0xFFu, 0xFFu, 0x9Bu), pNPCTopics[121].pText, 3);
       pDialogueWindow->pNumPresenceButton = 0;
       return;
     }
@@ -97,7 +64,7 @@
       strcat(pTmpBuf.data(), "\n \n");
       strcat(pTmpBuf.data(), pGlobalTXT_LocalizationStrings[528]); //"I can offer you nothing further."
       pTextHeight = pFontArrus->CalcTextHeight(pTmpBuf.data(), &working_window, 0, 0);
-      working_window.DrawTitleText(pFontArrus, 0, (174 - pTextHeight) / 2 + 138, pColorYellow, pTmpBuf.data(), 3);
+      working_window.DrawTitleText(pFontArrus, 0, (174 - pTextHeight) / 2 + 138, TargetColor(0xFFu, 0xFFu, 0x9Bu), pTmpBuf.data(), 3);
       return;
     }
     v61 = 0;
@@ -128,7 +95,7 @@
       strcat(pTmpBuf.data(), "\n \n");
       strcat(pTmpBuf.data(), pGlobalTXT_LocalizationStrings[528]); //"I can offer you nothing further."
       pTextHeight = pFontArrus->CalcTextHeight(pTmpBuf.data(), &working_window, 0, 0);
-      working_window.DrawTitleText(pFontArrus, 0, (174 - pTextHeight) / 2 + 138, pColorYellow, pTmpBuf.data(), 3);
+      working_window.DrawTitleText(pFontArrus, 0, (174 - pTextHeight) / 2 + 138, TargetColor(0xFFu, 0xFFu, 0x9Bu), pTmpBuf.data(), 3);
       return;
     }
     if ( pSkillFlag )
@@ -151,9 +118,9 @@
         pButton->uHeight = pTextHeight;
         v26 = pButton->uY + pTextHeight - 1;
         pButton->uW = v26;
-        pTextColor = pColorYellow;
+        pTextColor = TargetColor(0xFFu, 0xFFu, 0x9Bu);
         if ( pDialogueWindow->pCurrentPosActiveItem != i )
-          pTextColor = pColorWhite;
+          pTextColor = TargetColor(0xFFu, 0xFFu, 0xFFu);
         working_window.DrawTitleText(pFontArrus, 0, pButton->uY, pTextColor, pGlobalTXT_LocalizationStrings[400], 3);//"Buy Spells"
       }
       else
@@ -166,9 +133,9 @@
           pButton->uHeight = pTextHeight;
           v26 = pButton->uY + pTextHeight - 1;
           pButton->uW = v26;
-          pTextColor = pColorYellow;
+          pTextColor = TargetColor(0xFFu, 0xFFu, 0x9Bu);
           if ( pDialogueWindow->pCurrentPosActiveItem != i )
-            pTextColor = pColorWhite;
+            pTextColor = TargetColor(0xFFu, 0xFFu, 0xFFu);
           working_window.DrawTitleText(pFontArrus, 0, pButton->uY, pTextColor, pSkillNames[pButton->msg_param - 36], 3);
         }
         else
@@ -211,63 +178,56 @@
     if ( HouseUI_CheckIfPlayerCanInteract() )
     {
       v8 = 0;
-      for ( v9 = 12; v9; --v9 )
+      for ( uint i = 0; i < 12; ++i )
       {
-        if ( pParty->SpellBooksInGuilds[window_SpeakInHouse->par1C-139][v9].uItemID > 0 )
+        if ( pParty->SpellBooksInGuilds[window_SpeakInHouse->par1C - 139][i].uItemID > 0 )
           ++v8;
       }
       GetAsyncKeyState(17);
-      statusbar_string = pGlobalTXT_LocalizationStrings[195]; //"Select the Item to Buy"
-      if ( dialog_menu_id != HOUSE_DIALOGUE_SHOP_BUY_STANDARD)
-        statusbar_string = pGlobalTXT_LocalizationStrings[196]; //"Select the Special Item to Buy"	
-      DrawTextAtStatusBar(statusbar_string, 0);
+      DrawTextAtStatusBar(pGlobalTXT_LocalizationStrings[195], 0);//"Select the Item to Buy"
       if ( !v8 )
       {
-        working_window.DrawShops_next_generation_time_string(pParty->PartyTimes.Shops_next_generation_time[window_SpeakInHouse->par1C] - pParty->uTimePlayed);//"Приходите через 14 дней"
+        working_window.DrawShops_next_generation_time_string(pParty->PartyTimes.Shops_next_generation_time[window_SpeakInHouse->par1C - 139] - pParty->uTimePlayed);//"Приходите через 14 дней"
         return;
       }
-      v12 = pMouse->GetCursorPos(&v51);
-      result = v12->x + pSRZBufferLineOffsets[pMouse->GetCursorPos(&v50)->y];
-      v13 = pRenderer->pActiveZBuffer[result] & 0xFFFF;
-      if ( pRenderer->pActiveZBuffer[result] & 0xFFFF )
+      pMouse->GetCursorPos(&cursor);
+      v13 = pRenderer->pActiveZBuffer[cursor.x + pSRZBufferLineOffsets[cursor.y]] & 0xFFFF;
+      if ( v13 )
       {
         v15 = (ItemGen *)(&pParty->pPlayers[1].uExpressionTimeLength + 18 * (v13 + 12 * (int)window_SpeakInHouse->ptr_1C));
         v17 = pPlayers[uActiveCharacter]->SelectPhrasesTransaction( (ItemGen *)&pParty->pPlayers[1].uExpressionTimeLength + v13 + 12 * (int)window_SpeakInHouse->ptr_1C, BuildingType_MagicShop, (int)window_SpeakInHouse->ptr_1C,  2);
         v18 = BuildDialogueString(pMerchantsBuyPhrases[v17], uActiveCharacter - 1, v15, (char *)window_SpeakInHouse->ptr_1C, 2, 0);
         pTextHeight = pFontArrus->CalcTextHeight(v18, &working_window, 0, 0);
-        working_window.DrawTitleText(pFontArrus, 0, (174 - pTextHeight) / 2 + 138,  pColorWhite, v18, 3);
+        working_window.DrawTitleText(pFontArrus, 0, (174 - pTextHeight) / 2 + 138,  TargetColor(0xFFu, 0xFFu, 0xFFu), v18, 3);
         return;
       }
     }
     return;
   }
-  if ( dialog_menu_id == HOUSE_DIALOGUE_GUILD_LEARN_SKILL )
+  if ( HouseUI_CheckIfPlayerCanInteract() )
   {
-    if ( HouseUI_CheckIfPlayerCanInteract() )
+    if ( pPlayers[uActiveCharacter]->pActiveSkills[dialog_menu_id-36] )
     {
-      if ( pPlayers[uActiveCharacter]->pActiveSkills[dialog_menu_id-36] )
+      sprintf(pTmpBuf.data(), pGlobalTXT_LocalizationStrings[403], pSkillNames[dialog_menu_id-36]); //"You already know the %s skill"
+      ShowStatusBarString(pTmpBuf.data(), 2);
+      pAudioPlayer->PlaySound(SOUND_error, 0, 0, -1, 0, 0, 0, 0);
+    }
+    else
+    {
+      if ( pParty->uNumGold < pPrice )
       {
-        sprintf(pTmpBuf.data(), pGlobalTXT_LocalizationStrings[403], pClassNames[dialog_menu_id - 16]); //"You already know the %s skill"
-        ShowStatusBarString(pTmpBuf.data(), 2);
-        pAudioPlayer->PlaySound(SOUND_error, 0, 0, -1, 0, 0, 0, 0);
+        ShowStatusBarString(pGlobalTXT_LocalizationStrings[155], 2); //"You don't have enough gold"
+        PlayHouseSound((unsigned int)window_SpeakInHouse->ptr_1C, HouseSound_NotEnoughMoney_TrainingSuccessful);
       }
       else
       {
-        if ( pParty->uNumGold < pPrice )
-        {
-          ShowStatusBarString(pGlobalTXT_LocalizationStrings[155], 2); //"You don't have enough gold"
-          PlayHouseSound((unsigned int)window_SpeakInHouse->ptr_1C, HouseSound_NotEnoughMoney_TrainingSuccessful);
-        }
-        else
-        {
-          Party::TakeGold(pPrice);
-          pPlayers[uActiveCharacter]->pActiveSkills[dialog_menu_id-36] = 1;
-        }
+        Party::TakeGold(pPrice);
+        pPlayers[uActiveCharacter]->pActiveSkills[dialog_menu_id-36] = 1;
       }
     }
-    pMessageQueue_50CBD0->AddMessage(UIMSG_Escape, 1, 0);
-    return;
   }
+  pMessageQueue_50CBD0->AddMessage(UIMSG_Escape, 1, 0);
+  return;
 }
 //----- (004BC8D5) --------------------------------------------------------
 void SpellBookGenerator()//for GuildDialogs
--- a/UI/UIHouses.cpp	Wed Oct 23 10:24:38 2013 +0600
+++ b/UI/UIHouses.cpp	Wed Oct 23 12:49:25 2013 +0600
@@ -1057,7 +1057,7 @@
     case BuildingType_SelfGuild:
     case BuildingType_16:
     {
-      if ( pParty->PartyTimes.Shops_next_generation_time[window_SpeakInHouse->par1C] >= (signed __int64)pParty->uTimePlayed )
+      if ( pParty->PartyTimes.Shops_next_generation_time[window_SpeakInHouse->par1C - 139] >= (signed __int64)pParty->uTimePlayed )
       {
         for ( uint i = 0; i < 12; ++i )
         {
@@ -1068,7 +1068,7 @@
       else//generation new books
       {
         SpellBookGenerator();
-        pParty->PartyTimes.Shops_next_generation_time[window_SpeakInHouse->par1C] = pParty->uTimePlayed + (signed __int64)((double)(0xA8C000
+        pParty->PartyTimes.Shops_next_generation_time[window_SpeakInHouse->par1C - 139] = pParty->uTimePlayed + (signed __int64)((double)(0xA8C000
                                   * (signed int)p2DEvents[(unsigned int)window_SpeakInHouse->ptr_1C - 1].field_1C) * 0.033333335);
       }
       break;
@@ -2076,13 +2076,13 @@
       if ( pPriceSkill < v9 / 3 )
         pPriceSkill = v9 / 3;
       all_text_height = 0;
-      for ( pItemNum = pDialogueWindow->pStartingPosActiveItem;
-            pItemNum < pDialogueWindow->pStartingPosActiveItem + pDialogueWindow->pNumPresenceButton; ++pItemNum )
+      for ( int i = pDialogueWindow->pStartingPosActiveItem;
+            i < pDialogueWindow->pStartingPosActiveItem + pDialogueWindow->pNumPresenceButton; ++i )
       {
-        if ( byte_4ED970_skill_learn_ability_by_class_table[pPlayers[uActiveCharacter]->classType][pDialogueWindow->GetControl(pItemNum)->msg_param - 36]
-            && !pPlayers[uActiveCharacter]->pActiveSkills[pDialogueWindow->GetControl(pItemNum)->msg_param - 36] )
+        if ( byte_4ED970_skill_learn_ability_by_class_table[pPlayers[uActiveCharacter]->classType][pDialogueWindow->GetControl(i)->msg_param - 36]
+            && !pPlayers[uActiveCharacter]->pActiveSkills[pDialogueWindow->GetControl(i)->msg_param - 36] )
         {
-          all_text_height = pFontArrus->CalcTextHeight(pSkillNames[pDialogueWindow->GetControl(pItemNum)->msg_param - 36], &dialog_window, 0, 0);
+          all_text_height = pFontArrus->CalcTextHeight(pSkillNames[pDialogueWindow->GetControl(i)->msg_param - 36], &dialog_window, 0, 0);
           pSkillCount++;
         }
       }
@@ -2094,10 +2094,10 @@
         if ( (149 - all_text_height) / pSkillCount > 32 )
           v91 = 32;
         v54 = (149 - pSkillCount * v91 - all_text_height) / 2 - v91 / 2 + 162;
-        for ( pItemNum = pDialogueWindow->pStartingPosActiveItem;
-              pItemNum < pDialogueWindow->pStartingPosActiveItem + pDialogueWindow->pNumPresenceButton; pItemNum++ )
+        for ( int i = pDialogueWindow->pStartingPosActiveItem;
+              i < pDialogueWindow->pStartingPosActiveItem + pDialogueWindow->pNumPresenceButton; i++ )
         {
-          pButton = pDialogueWindow->GetControl(pItemNum);
+          pButton = pDialogueWindow->GetControl(i);
           if ( !byte_4ED970_skill_learn_ability_by_class_table[pPlayers[uActiveCharacter]->classType][pButton->msg_param - 36]
             || pPlayers[uActiveCharacter]->pActiveSkills[pButton->msg_param - 36] )
           {
@@ -2113,7 +2113,7 @@
             v54 = pTextHeight + pButton->uY - 1;
             pButton->uW = v54;
             pColorText = TargetColor(0xFFu, 0xFFu, 0x9Bu);
-            if ( pDialogueWindow->pCurrentPosActiveItem != pItemNum )
+            if ( pDialogueWindow->pCurrentPosActiveItem != i )
               pColorText = TargetColor(0xFFu, 0xFFu, 0xFFu);
             dialog_window.DrawTitleText(pFontArrus, 0, pButton->uY, pColorText, pSkillNames[pButton->msg_param - 36], 3);
           }