Mercurial > mm7
diff UIHouses.cpp @ 662:8c595c7a3218
m
author | Ritor1 |
---|---|
date | Tue, 12 Mar 2013 11:34:08 +0600 |
parents | 2535151505da |
children | 28109e4eee44 ee978b573798 |
line wrap: on
line diff
--- a/UIHouses.cpp Tue Mar 12 09:43:50 2013 +0600 +++ b/UIHouses.cpp Tue Mar 12 11:34:08 2013 +0600 @@ -1015,17 +1015,17 @@ *(float *)&v83 = v2; *(float *)&v89 = v2 * v2; v3 = (signed __int64)(*(float *)&v89 * 0.1); - v4 = v3 * (100 - pPlayer->GetMerchant()) / 100; - if ( v4 < v3 / 3 ) - v4 = v3 / 3; + pItemNum = v3 * (100 - pPlayer->GetMerchant()) / 100; + if ( pItemNum < v3 / 3 ) + pItemNum = v3 / 3; v5 = 1; - pOutString = (GUIFont *)v4; - if ( v4 <= 0 ) + pOutString = (GUIFont *)pItemNum; + if ( pItemNum <= 0 ) pOutString = (GUIFont *)1; v6 = (signed __int64)(*(float *)&v89 * *(float *)&v83 * 0.0099999998); v7 = v6 * (100 - pPlayer->GetMerchant()) / 100; if ( v7 < v6 / 3 ) - v7 = v6 / 3; + v7 = v6 / 3; v83 = v7; if ( v7 <= 0 ) { @@ -1059,19 +1059,16 @@ strcat(v77, "\n \n"); v75[0] = 0; pTextHeight = 0; - v31 = (signed int)window_SpeakInHouse->ptr_1C; - if ( v31 >= 108 && v31 <= 120 ) + if ( (signed int)window_SpeakInHouse->ptr_1C >= 108 && (signed int)window_SpeakInHouse->ptr_1C <= 120 ) { sprintf(v75, "\xC" "%05d", pDialogueWindow->pCurrentPosActiveItem == 5 ? pColorYellow : pColorWhite); strcat(v75, pGlobalTXT_LocalizationStrings[611]); // Play Arcomage pTextHeight = pFontArrus->CalcTextHeight(v75, &dialog_window, 0, 0); } - v34 = pDialogueWindow->pStartingPosActiveItem; - v35 = v34 + pDialogueWindow->pNumPresenceButton; + pNumActiveItem = pDialogueWindow->pStartingPosActiveItem; v36 = LOBYTE(pFontArrus->uFontHeight) - 3; v37 = -pDialogueWindow->pNumPresenceButton < 0; - pOutString = (GUIFont *)pDialogueWindow->pStartingPosActiveItem; - if ( !(v37 ^ v34 < v35) ) + if ( !(v37 ^ pNumActiveItem < pNumActiveItem + pDialogueWindow->pNumPresenceButton) ) { sprintf(pTmpBuf, "%s%s%s%s", Dest, a1, v77, v75); dialog_window.DrawTitleText(pFontArrus, 0, 146, 0, pTmpBuf, 3); @@ -1079,7 +1076,7 @@ } while ( 1 ) { - pButton = pDialogueWindow->GetControl((unsigned int)pOutString); + pButton = pDialogueWindow->GetControl(pNumActiveItem); if ( pButton->uControlParam == 15 ) { v46 = pTextHeight; @@ -1115,8 +1112,8 @@ v41 = v39 + v40 - 1; pButton->uW = v41; } - pOutString = (GUIFont *)((char *)pOutString + 1); - if ( (signed int)pOutString >= pDialogueWindow->pNumPresenceButton + pDialogueWindow->pStartingPosActiveItem ) + pNumActiveItem++; + if ( pNumActiveItem >= pDialogueWindow->pNumPresenceButton + pDialogueWindow->pStartingPosActiveItem ) { sprintf(pTmpBuf, "%s%s%s%s", &Dest, &a1, &v77, &v75); dialog_window.DrawTitleText(pFontArrus, 0, 146, 0, pTmpBuf, 3);