Mercurial > mm7
diff mm7_4.cpp @ 607:cfca6297e4ae
ArmorShop fixes
author | Gloval |
---|---|
date | Fri, 08 Mar 2013 00:36:33 +0400 |
parents | 975a231bb4ec |
children | 8a0ec99a5177 |
line wrap: on
line diff
--- a/mm7_4.cpp Thu Mar 07 15:26:44 2013 +0600 +++ b/mm7_4.cpp Fri Mar 08 00:36:33 2013 +0400 @@ -4806,8 +4806,8 @@ // AE3370: using guessed type int dword_AE3370; //----- (00495430) -------------------------------------------------------- -char *__fastcall GetReputationString(signed int a1) -{ +char * GetReputationString( signed int a1 ) + { if (a1 >= 25) return pGlobalTXT_LocalizationStrings[379]; // Hated else if (a1 >= 6) @@ -9070,11 +9070,11 @@ return; if ( in_current_building_type <= BildingType_AlchemistShop ) { - if ( dword_F8B19C != 2 ) - { - if ( dword_F8B19C <= 2 ) + if ( dialog_menu_id != 2 ) + { + if ( dialog_menu_id <= 2 ) return; - if ( dword_F8B19C <= 5 || dword_F8B19C == 94 ) + if ( dialog_menu_id <= 5 || dialog_menu_id == 94 ) { v8 = pMouse->GetCursorPos(&v15)->x - 14; v18 = (v8 >> 5) + 14 * ((pMouse->GetCursorPos(&v14)->y - 17) >> 5); @@ -9087,7 +9087,7 @@ GameUI_DrawItemInfo(v7); return; } - if ( dword_F8B19C != 95 ) + if ( dialog_menu_id != 95 ) return; } v4 = pMouse->GetCursorPos(&v11); @@ -9097,12 +9097,12 @@ return; v6 = 9 * (v5 + 12 * (unsigned int)window_SpeakInHouse->ptr_1C); v7 = (ItemGen *)((char *)&pParty->pPickedItem + 4 * v6 + 4); - if ( dword_F8B19C != 2 ) + if ( dialog_menu_id != 2 ) // v7 = (ItemGen *)&pParty->field_C59C[v6 + 715]; v7 =&pParty->SpecialItemsInShops[(unsigned int)window_SpeakInHouse->ptr_1C][v5]; goto LABEL_15; } - if ( in_current_building_type <= BildingType_16 && dword_F8B19C == BildingType_18 ) + if ( in_current_building_type <= BildingType_16 && dialog_menu_id == BildingType_18 ) { v1 = pMouse->GetCursorPos(&a2); v2 = v1->x + pSRZBufferLineOffsets[pMouse->GetCursorPos(&v16)->y]; @@ -9393,7 +9393,7 @@ case 13: ptr_F8B1E8 = pNPCStats->pProfessions[pCurrentNPCInfo->uProfession].pJoinText;//(char *)*(&pNPCStats->field_13A64 + 5 * v2->uProfession); ptr_F8B1E8 = BuilDialogueString((char *)ptr_F8B1E8, uActiveCharacter - 1, 0, 0, 0, 0); - sub_4B40E6(); + NPCHireableDialogPrepare(); dialogue_show_profession_details = false; goto _return; case 19: @@ -9619,7 +9619,7 @@ pParty->field_709 = 0; sub_44A56A(); PrepareHouse((HOUSE_ID)(int)window_SpeakInHouse->ptr_1C); - dword_F8B19C = 1; + dialog_menu_id = 1; pMessageQueue_50CBD0->AddMessage(UIMSG_Escape, 1, 0); /*if ( (signed int)pMessageQueue_50CBD0->uNumMessages < 40 ) @@ -10616,7 +10616,7 @@ pDialogueWindow->CreateButton(0, 0, 0, 0, 1, 0, 0x51u, 0, 0, "", 0); pDialogueWindow->CreateButton(0x1E0u, 0xA0u, 0x8Cu, 0x1Eu, 1, 0, 0xAFu, 0x52u, 0, pGlobalTXT_LocalizationStrings[122], 0); pDialogueWindow->_41D08F(1, 1, 0, 2); - dword_F8B19C = -1; + dialog_menu_id = -1; } // F8B19C: using guessed type int dword_F8B19C; @@ -10642,14 +10642,14 @@ v2 = pGlobalTXT_LocalizationStrings[535]; pDialogueWindow->CreateButton(0x1E0u, 0xA0u, 0x8Cu, 0x1Eu, 1, 0, 0xAFu, 0x4Fu, 0, v2, 0); pDialogueWindow->_41D08F(1, 1, 0, 2); - dword_F8B19C = -1; + dialog_menu_id = -1; } // F8B19C: using guessed type int dword_F8B19C; // F8B1A8: using guessed type int dword_F8B1A8; //----- (004B40E6) -------------------------------------------------------- -void __cdecl sub_4B40E6() -{ +void NPCHireableDialogPrepare() + { signed int v0; // ebx@1 NPCData *v1; // edi@1 @@ -10657,50 +10657,21 @@ v1 = HouseNPCData[(unsigned int)((char *)pDialogueNPCCount + -(dword_591080 != 0) - 1)]; pDialogueWindow->Release(); pDialogueWindow = GUIWindow::Create(0, 0, 640, 0x15Eu, WINDOW_MainMenu, 0, 0); - pBtn_ExitCancel = pDialogueWindow->CreateButton( - 0x1D7u, - 0x1BDu, - 0xA9u, - 0x23u, - 1, - 0, - 0x71u, - 0, - 0, - pGlobalTXT_LocalizationStrings[34], + pBtn_ExitCancel = pDialogueWindow->CreateButton( 0x1D7u, 0x1BDu, 0xA9u, 0x23u, 1, 0, 0x71u, 0, 0, + pGlobalTXT_LocalizationStrings[34], //"Cancel" (Texture *)(uExitCancelTextureId != -1 ? (int)&pIcons_LOD->pTextures[uExitCancelTextureId] : 0), 0); pDialogueWindow->CreateButton(0, 0, 0, 0, 1, 0, 0x51u, 0, 0, "", 0); if ( pNPCStats->pProfessions[v1->uProfession].pBenefits)//*(&pNPCStats->field_13A5C + 5 * v1->uProfession) ) { - pDialogueWindow->CreateButton( - 0x1E0u, - 0xA0u, - 0x8Cu, - 0x1Eu, - 1, - 0, - 0xAFu, - 0x4Du, - 0, - pGlobalTXT_LocalizationStrings[407], - 0); + pDialogueWindow->CreateButton( 0x1E0u, 0xA0u, 0x8Cu, 0x1Eu, 1, 0, 0xAFu, 0x4Du, 0, + pGlobalTXT_LocalizationStrings[407], 0);//"More Information" v0 = 1; } - pDialogueWindow->CreateButton( - 0x1E0u, - 30 * v0 + 160, - 0x8Cu, - 0x1Eu, - 1, - 0, - 0xAFu, - 0x4Cu, - 0, - pGlobalTXT_LocalizationStrings[406], - 0); + pDialogueWindow->CreateButton( 0x1E0u, 30 * v0 + 160, 0x8Cu, 0x1Eu, 1, 0, 0xAFu, 0x4Cu, 0, + pGlobalTXT_LocalizationStrings[406], 0); //"Hire" pDialogueWindow->_41D08F(v0 + 1, 1, 0, 2); - dword_F8B19C = -1; + dialog_menu_id = -1; } @@ -10737,7 +10708,7 @@ else { v17 = HouseNPCData[_this + 1 - ((dword_591080 != 0) + 1)]; - if ( dword_F8B19C == -1 ) + if ( dialog_menu_id == -1 ) { pDialogueWindow->Release(); } @@ -10820,7 +10791,7 @@ pDialogueWindow->_41D08F(num_menu_buttons, 1, 0, 2); dword_F8B1E0 = pDialogueWindow->pNumPresenceButton; } - dword_F8B19C = 1; + dialog_menu_id = 1; } } @@ -10962,12 +10933,12 @@ result = sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win(); if ( result ) { - if ( dword_F8B19C != 1 ) - { - if ( dword_F8B19C != 17 ) - { - result = dword_F8B19C - 96; - if ( dword_F8B19C == 96 ) + if ( dialog_menu_id != 1 ) + { + if ( dialog_menu_id != 17 ) + { + result = dialog_menu_id - 96; + if ( dialog_menu_id == 96 ) { result = sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win(); if ( result ) @@ -11247,8 +11218,8 @@ //----- (004B4FCF) -------------------------------------------------------- -int __cdecl MagicShopDialog() -{ +void MagicShopDialog() + { Player *v0; // ebx@1 int result; // eax@6 signed int v2; // esi@8 @@ -11263,19 +11234,19 @@ signed int v11; // esi@16 int v12; // ST08_4@19 int v13; // eax@19 - int v14; // edi@21 + int all_text_height; // edi@21 char **v15; // esi@21 int v16; // eax@22 GUIWindow *v17; // ecx@23 int v18; // edx@23 int v19; // edi@23 unsigned __int8 v20; // sf@23 - GUIButton *v21; // esi@25 + GUIButton *control_button; // esi@25 const char **v22; // eax@25 int v23; // eax@25 unsigned int v24; // ecx@25 const char **v25; // edx@25 - unsigned __int16 v26; // ax@25 + unsigned __int16 text_color; // ax@25 signed int v27; // esi@30 int v28; // ST08_4@34 int v29; // eax@34 @@ -11361,29 +11332,31 @@ POINT a2; // [sp+64h] [bp-94h]@8 POINT v110; // [sp+6Ch] [bp-8Ch]@30 POINT v111; // [sp+74h] [bp-84h]@8 - GUIWindow v112; // [sp+7Ch] [bp-7Ch]@1 + GUIWindow dialog_window; // [sp+7Ch] [bp-7Ch]@1 char *Str; // [sp+D0h] [bp-28h]@54 - int v114; // [sp+D4h] [bp-24h]@23 - unsigned int color2; // [sp+D8h] [bp-20h]@1 - unsigned int white; // [sp+DCh] [bp-1Ch]@1 + int v146; // [sp+D4h] [bp-24h]@23 + unsigned int hilight_color; // [sp+D8h] [bp-20h]@1 + unsigned int m_text_color; // [sp+DCh] [bp-1Ch]@1 __int32 v117; // [sp+E0h] [bp-18h]@8 int v118; // [sp+E4h] [bp-14h]@40 const char **v119; // [sp+E8h] [bp-10h]@24 Player *_this; // [sp+ECh] [bp-Ch]@1 unsigned __int8 uPlayerID; // [sp+F3h] [bp-5h]@14 - int v122; // [sp+F4h] [bp-4h]@23 + int v152; // [sp+F4h] [bp-4h]@23 + int v122; + int v114; v0 = pPlayers[uActiveCharacter]; _this = pPlayers[uActiveCharacter]; - memcpy(&v112, window_SpeakInHouse, sizeof(v112)); - v112.uFrameX = 483; - v112.uFrameWidth = 148; - v112.uFrameZ = 334; - white = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFFu, 0xFFu, 0xFFu); - color2 = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xE1u, 0xCDu, 0x23u); - if ( dword_F8B19C > 5 ) - { - if ( dword_F8B19C == 94 ) + memcpy(&dialog_window, window_SpeakInHouse, sizeof(dialog_window)); + dialog_window.uFrameX = 483; + dialog_window.uFrameWidth = 148; + dialog_window.uFrameZ = 334; + m_text_color = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xFFu, 0xFFu, 0xFFu); + hilight_color = GenerateColorAsCloseAsPossibleToR8G8B8InTargetFormat(0xE1u, 0xCDu, 0x23u); + if ( dialog_menu_id > 5 ) + { + if ( dialog_menu_id == 94 ) { draw_leather(); CharacterUI_InventoryTab_Draw(uActiveCharacter, 1); @@ -11394,7 +11367,7 @@ v77 = pShopOptions; do { - v78 = pFontArrus->CalcTextHeight(*v77, &v112, 0, 0); + v78 = pFontArrus->CalcTextHeight(*v77, &dialog_window, 0, 0); ++v77; v76 += v78; } @@ -11415,16 +11388,16 @@ v82 = v79->GetControl(v118); v83 = v119; v82->uY = (unsigned int)((char *)_this + v81); - v84 = pFontArrus->CalcTextHeight(*v83, &v112, 0, 0); + v84 = pFontArrus->CalcTextHeight(*v83, &dialog_window, 0, 0); v85 = v82->uY; v86 = v122; v82->uHeight = v84; v81 = v84 + v85 - 1; v82->uW = v81; - v87 = color2; + v87 = hilight_color; if ( pDialogueWindow->pCurrentPosActiveItem != v86 ) - v87 = white; - v112.DrawTitleText(pFontArrus, 0, v85, v87, *v119, 3u); + v87 = m_text_color; + dialog_window.DrawTitleText(pFontArrus, 0, v85, v87, *v119, 3u); v79 = pDialogueWindow; ++v122; ++v119; @@ -11433,12 +11406,12 @@ } while ( v118 < result ); } - return result; - } - if ( dword_F8B19C != 95 ) - { - result = dword_F8B19C - 96; - if ( dword_F8B19C == 96 ) + return; + } + if ( dialog_menu_id != 95 ) + { + result = dialog_menu_id - 96; + if ( dialog_menu_id == 96 ) { result = sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win(); if ( result ) @@ -11462,7 +11435,7 @@ v36 = v31->GetControl(v34)->uControlParam - 36; if ( byte_4ED970_skill_learn_ability_by_class_table[_this->classType][v36] && !_this->pActiveSkills[v36] ) { - v37 = pFontArrus->CalcTextHeight(pSkillNames[v36], &v112, 0, 0); + v37 = pFontArrus->CalcTextHeight(pSkillNames[v36], &dialog_window, 0, 0); v118 += v37; ++v122; } @@ -11479,14 +11452,14 @@ v30 = pTmpBuf; v97 = 3; v95 = pTmpBuf; - v92 = color2; + v92 = hilight_color; v91 = 0; v89 = 0; - v88 = &v112; + v88 = &dialog_window; goto LABEL_61; } sprintf(pTmpBuf, pGlobalTXT_LocalizationStrings[401], v119);// "Skill Cost: %lu" - v112.DrawTitleText(pFontArrus, 0, 0x92u, 0, pTmpBuf, 3u); + dialog_window.DrawTitleText(pFontArrus, 0, 0x92u, 0, pTmpBuf, 3u); v119 = (const char **)((149 - v118) / v122); if ( (149 - v118) / v122 > 32 ) v119 = (const char **)32; @@ -11513,17 +11486,17 @@ v42 = pSkillNames[v41]; v40->uY = (unsigned int)((char *)v119 + v114); Str = v42; - v43 = pFontArrus->CalcTextHeight(v42, &v112, 0, 0); + v43 = pFontArrus->CalcTextHeight(v42, &dialog_window, 0, 0); v44 = v40->uY; v45 = v122; v40->uHeight = v43; v46 = v44 + v43 - 1; v40->uW = v46; v114 = v46; - v47 = color2; + v47 = hilight_color; if ( pDialogueWindow->pCurrentPosActiveItem != v45 ) - v47 = white; - v112.DrawTitleText(pFontArrus, 0, v44, v47, Str, 3u); + v47 = m_text_color; + dialog_window.DrawTitleText(pFontArrus, 0, v44, v47, Str, 3u); } v48 = v31->pStartingPosActiveItem; ++v118; @@ -11534,12 +11507,12 @@ } } } - return result; + return; } } else { - if ( dword_F8B19C == 5 ) + if ( dialog_menu_id == 5 ) { draw_leather(); CharacterUI_InventoryTab_Draw(uActiveCharacter, 1); @@ -11553,7 +11526,7 @@ || (result = (int)pMouse->GetCursorPos(&v104), *(int *)result >= 462) || (result = v0->GetItemIDAtInventoryIndex((int *)&v117), v3 = 0, !result) || (result *= 9, !(_this->field_1F5[4 * result + 15] & 2)) ) - return result; + return; v96 = 0; v94 = 5; v93 = window_SpeakInHouse->ptr_1C; @@ -11565,9 +11538,9 @@ v10 = (char *)pMerchantsRepairPhrases[v29]; goto LABEL_35; } - if ( dword_F8B19C == 1 ) - { - result = sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win(); + if ( dialog_menu_id == 1 ) + { + /* result = sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win(); if ( result ) { pShopOptions[0] = pGlobalTXT_LocalizationStrings[134];// "Buy Standard" @@ -11578,7 +11551,7 @@ v15 = pShopOptions; do { - v16 = pFontArrus->CalcTextHeight(*v15, &v112, 0, 0); + v16 = pFontArrus->CalcTextHeight(*v15, &dialogue_window, 0, 0); ++v15; v14 += v16; } @@ -11599,7 +11572,7 @@ v21 = v17->GetControl(v122); v22 = (const char **)_this; v21->uY = v114 + v19; - v23 = pFontArrus->CalcTextHeight(*v22, &v112, 0, 0); + v23 = pFontArrus->CalcTextHeight(*v22, &dialogue_window, 0, 0); v24 = v21->uY; v25 = v119; v21->uHeight = v23; @@ -11607,8 +11580,8 @@ v21->uW = v19; v26 = color2; if ( (const char **)pDialogueWindow->pCurrentPosActiveItem != v25 ) - v26 = white; - v112.DrawTitleText(pFontArrus, 0, v24, v26, (const char *)LODWORD(_this->pConditions[0]), 3u); + v26 = m_text_color; + dialogue_window.DrawTitleText(pFontArrus, 0, v24, v26, (const char *)LODWORD(_this->pConditions[0]), 3u); v17 = pDialogueWindow; v119 = (const char **)((char *)v119 + 1); _this = (Player *)((char *)_this + 4); @@ -11617,15 +11590,50 @@ } while ( v122 < result ); } - } - return result; - } - if ( dword_F8B19C != 2 ) - { - if ( dword_F8B19C != 3 ) - { - result = dword_F8B19C - 4; - if ( dword_F8B19C == 4 ) + }*/ + if ( !sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win() ) + return; + pShopOptions[0] = pGlobalTXT_LocalizationStrings[134]; //"Buy Standard" + pShopOptions[1] = pGlobalTXT_LocalizationStrings[152]; //"Buy Special" + pShopOptions[2] = pGlobalTXT_LocalizationStrings[159]; //"Display Inventory" + pShopOptions[3] = pGlobalTXT_LocalizationStrings[160]; + + all_text_height = 0; + for(int i=0;i<4;++i) + all_text_height += pFontArrus->CalcTextHeight(pShopOptions[i], &dialog_window, 0, 0); + v146 = (174 - all_text_height) / 4; + + v23 = (174 - 4 * (174 - all_text_height) / 4 - all_text_height) / 2 - (174 - all_text_height) / 4 / 2 + 138; + int j=0; + if ( pDialogueWindow->pNumPresenceButton>=0 ) + { + int th = 2; + for (v152 = pDialogueWindow->pStartingPosActiveItem; v152 < pDialogueWindow->pNumPresenceButton + pDialogueWindow->pStartingPosActiveItem; ++v152) + { + control_button = pDialogueWindow->GetControl(v152); + control_button->uY = v146 + v23; + v27 = pFontArrus->CalcTextHeight(pShopOptions[j], &dialog_window, 0, 0); + control_button->uHeight = v27; + v23 = control_button->uY + control_button->uHeight - 1; + control_button->uW = v23; + text_color = hilight_color; + if ( pDialogueWindow->pCurrentPosActiveItem != th ) + text_color = m_text_color; + dialog_window.DrawTitleText(pFontArrus, 0, control_button->uY, text_color, pShopOptions[j], 3); + ++th; + ++j; + } + } + + + return; + } + if ( dialog_menu_id != 2 ) + { + if ( dialog_menu_id != 3 ) + { + result = dialog_menu_id - 4; + if ( dialog_menu_id == 4 ) { draw_leather(); CharacterUI_InventoryTab_Draw(uActiveCharacter, 1); @@ -11653,9 +11661,11 @@ v5 = BuilDialogueString("%24", uActiveCharacter - 1, (ItemGen *)v4, (char *)window_SpeakInHouse->ptr_1C, 4, 0); v97 = 3; v95 = v5; - v92 = white; - v6 = (212 - pFontArrus->CalcTextHeight(v5, &v112, 0, 0)) / 2 + 101; - return (int)v112.DrawTitleText(pFontArrus, v3, v6, v92, v95, v97); + v92 = m_text_color; + v6 = (212 - pFontArrus->CalcTextHeight(v5, &dialog_window, 0, 0)) / 2 + 101; + + dialog_window.DrawTitleText(pFontArrus, v3, v6, v92, v95, v97); + return; } v93 = window_SpeakInHouse->ptr_1C; v90 = (ItemGen *)v4; @@ -11670,7 +11680,7 @@ } } } - return result; + return; } draw_leather(); CharacterUI_InventoryTab_Draw(uActiveCharacter, 1); @@ -11683,7 +11693,7 @@ *(int *)result <= 13) || (result = (int)pMouse->GetCursorPos(&v101), *(int *)result >= 462) || (result = v0->GetItemIDAtInventoryIndex((int *)&v117), v3 = 0, !result) ) - return result; + return; v96 = 0; v94 = 3; v93 = window_SpeakInHouse->ptr_1C; @@ -11697,20 +11707,21 @@ v30 = BuilDialogueString(v10, v9, v90, (char *)v93, v94, v96); v97 = 3; v95 = v30; - v92 = white; + v92 = m_text_color; v91 = v3; v89 = v3; - v88 = &v112; + v88 = &dialog_window; LABEL_61: v6 = (174 - pFontArrus->CalcTextHeight(v30, v88, v89, v91)) / 2 + 138; - return (int)v112.DrawTitleText(pFontArrus, v3, v6, v92, v95, v97); + dialog_window.DrawTitleText(pFontArrus, v3, v6, v92, v95, v97); + return; } } pRenderer->DrawTextureIndexed(8u, 8u, ShopTexture); v3 = 0; v49 = 0; v122 = 0; - if ( dword_F8B19C == 2 ) + if ( dialog_menu_id == 2 ) { do { @@ -11845,7 +11856,7 @@ { v66 = 0; v117 = 0; - if ( dword_F8B19C == 2 ) + if ( dialog_menu_id == 2 ) { do { @@ -11876,14 +11887,14 @@ else { v69 = pGlobalTXT_LocalizationStrings[195];// "Select the Item to Buy" - if ( dword_F8B19C != 2 ) + if ( dialog_menu_id != 2 ) v69 = pGlobalTXT_LocalizationStrings[196];// "Select the Special Item to Buy" } DrawTextAtStatusBar(v69, 0); if ( !v117 ) { - v112.DrawCurrentTime( pParty->field_3C.field_50[(unsigned int)window_SpeakInHouse->ptr_1C] - pParty->uTimePlayed); - return 0; + dialog_window.DrawCurrentTime( pParty->field_3C.field_50[(unsigned int)window_SpeakInHouse->ptr_1C] - pParty->uTimePlayed); + return; } v70 = pMouse->GetCursorPos(&v102); result = v70->x + pSRZBufferLineOffsets[pMouse->GetCursorPos(&v100)->y]; @@ -11894,7 +11905,7 @@ v72 = (int)window_SpeakInHouse->ptr_1C; // v73 = 9 * (v71 + 12 * v72); v74 = (ItemGen *)&pParty->StandartItemsInShops[v72][v71]; - if ( dword_F8B19C != 2 ) + if ( dialog_menu_id != 2 ) // v74 = (ItemGen *)&pParty->field_C59C[v73 + 724]; v74 =&pParty->SpecialItemsInShops[v72][v71]; if ( v67 && Str ) @@ -11920,7 +11931,7 @@ goto LABEL_35; } } - return result; + return; } //----- (004BC49B) -------------------------------------------------------- @@ -12303,16 +12314,16 @@ strcpy(v47, ""); strcpy(v48, ""); strcpy(v49, ""); - if ( dword_F8B19C != 1 ) - { - if ( dword_F8B19C != 18 ) //buy skill + if ( dialog_menu_id != 1 ) + { + if ( dialog_menu_id != 18 ) //buy skill { if ( sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win() ) { //v3 = (int)(&currPlayer->uIntelligence + dword_F8B19C); //test skill - if ( v58->pActiveSkills[dword_F8B19C-36] ) - { - sprintf(pTmpBuf, pGlobalTXT_LocalizationStrings[403], pClassNames[dword_F8B19C - 16]); //"You already know the %s skill" + if ( v58->pActiveSkills[dialog_menu_id-36] ) + { + sprintf(pTmpBuf, pGlobalTXT_LocalizationStrings[403], pClassNames[dialog_menu_id - 16]); //"You already know the %s skill" ShowStatusBarString(pTmpBuf, 2u); pAudioPlayer->PlaySound(SOUND_27, 0, 0, -1, 0, 0, 0, 0); } @@ -12326,7 +12337,7 @@ else { Party::TakeGold(v63); - v58->pActiveSkills[dword_F8B19C-36] = 1; + v58->pActiveSkills[dialog_menu_id-36] = 1; } } } @@ -12389,7 +12400,7 @@ GetAsyncKeyState(17); statusbar_string = pGlobalTXT_LocalizationStrings[195]; //"Select the Item to Buy" - if ( dword_F8B19C != 2 ) + if ( dialog_menu_id != 2 ) statusbar_string = pGlobalTXT_LocalizationStrings[196]; //"Select the Special Item to Buy" DrawTextAtStatusBar(statusbar_string, 0); if ( !v8 ) @@ -12630,14 +12641,14 @@ //v2 = pPlayers[uActiveCharacter]->_4B807C(p2DEvents_minus1__20[13 * (unsigned int)v0->ptr_1C]); v2 = pPlayers[uActiveCharacter]->_4B807C(p2DEvents[(unsigned int)v0->ptr_1C - 1].fPriceMultiplier); HIDWORD(v60) = v2; - if ( dword_F8B19C != 1 ) - { - if ( dword_F8B19C != 10 ) - { - if ( dword_F8B19C != 11 ) - { - - if ( dword_F8B19C == 96 ) + if ( dialog_menu_id != 1 ) + { + if ( dialog_menu_id != 10 ) + { + if ( dialog_menu_id != 11 ) + { + + if ( dialog_menu_id == 96 ) { if ( sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win() ) { @@ -12984,7 +12995,7 @@ v4 = v3 / 3; v32 = v3 / 3; } - if ( dword_F8B19C != 1 ) + if ( dialog_menu_id != 1 ) { if ( sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win() ) { @@ -12999,7 +13010,7 @@ if (false //if ( !*(&byte_4ED94C[37 * v1->uClass / 3] + dword_F8B19C) - || (v6 = (int)(&v1->uIntelligence + dword_F8B19C), *(short *)v6) ) + || (v6 = (int)(&v1->uIntelligence + dialog_menu_id), *(short *)v6) ) { pAudioPlayer->PlaySound(SOUND_27, 0, 0, -1, 0, 0, 0, 0); } @@ -13224,7 +13235,7 @@ s1 = v4 * (100 - v1->GetMerchant()) / 100; if ( (signed int)s1 < v4 / 3 ) s1 = v4 / 3; - if ( dword_F8B19C == 1 ) + if ( dialog_menu_id == 1 ) { if ( sub_4B1784_check_if_player_concious__draw_warning_else_mess_with_dlg_win() ) { @@ -13366,7 +13377,7 @@ } else { - if ( dword_F8B19C > 104 && dword_F8B19C <= 108 ) + if ( dialog_menu_id > 104 && dialog_menu_id <= 108 ) { if ( pParty->uNumGold < s1 ) { @@ -13381,7 +13392,7 @@ } Party::TakeGold(s1); v47[1] = (const char *)7; - v5 = &byte_4F09B0[32 * (unsigned __int8)*(&byte_4F0CCF[4 * (unsigned int)window_SpeakInHouse->ptr_1C] + dword_F8B19C)]; + v5 = &byte_4F09B0[32 * (unsigned __int8)*(&byte_4F0CCF[4 * (unsigned int)window_SpeakInHouse->ptr_1C] + dialog_menu_id)]; if ( v5[pParty->uDaysPlayed % 7 + 1] ) { if ( _strcmpi(pCurrentMapName, pMapStats->pInfos[(unsigned __int8)*v5].pFilename) ) @@ -13462,7 +13473,7 @@ } else { - dword_F8B19C = 1; + dialog_menu_id = 1; pAudioPlayer->PlaySound(SOUND_27, 0, 0, -1, 0, 0, 0, 0); } }