Mercurial > mm7
diff UI/UiGame.cpp @ 2203:4bfee77e900d
DoInteractionWithTopmostZObject cleaned
author | Ritor1 |
---|---|
date | Tue, 04 Feb 2014 17:29:04 +0600 |
parents | d9caf2b3d8d5 |
children | db94443ea4e7 |
line wrap: on
line diff
--- a/UI/UiGame.cpp Mon Feb 03 23:07:15 2014 +0100 +++ b/UI/UiGame.cpp Tue Feb 04 17:29:04 2014 +0600 @@ -684,7 +684,6 @@ { double v3; // st7@1 int v7; // eax@4 - ODMFace *pFace; // eax@6 const char *v14; // eax@8 char *result; // eax@12 unsigned int pMapID; // eax@14 @@ -718,12 +717,11 @@ { for ( uint i = 0; i < (uint)pOutdoor->pBModels[j].uNumFaces; ++i ) { - pFace = &pOutdoor->pBModels[j].pFaces[i]; - if ( pFace->sCogTriggeredID ) + if ( pOutdoor->pBModels[j].pFaces[i].sCogTriggeredID ) { - if ( !(BYTE2(pFace->uAttributes) & 0x10) ) + if ( !(pOutdoor->pBModels[j].pFaces[i].uAttributes & FACE_UNKNOW) ) { - v14 = GetEventHintString(pFace->sCogTriggeredID); + v14 = GetEventHintString(pOutdoor->pBModels[j].pFaces[i].sCogTriggeredID); if ( v14 ) { if ( _stricmp(v14, "") ) @@ -1954,15 +1952,15 @@ for (uint i = 0; i < (uint)pIndoor->pMapOutlines->uNumOutlines; ++i) { BLVMapOutline* pOutline = &pIndoor->pMapOutlines->pOutlines[i]; - BLVFace* pFace1 = pIndoor->pFaces + pOutline->uFace1ID; - BLVFace* pFace2 = pIndoor->pFaces + pOutline->uFace2ID; - if (pFace1->Visible() && pFace2->Visible()) + //BLVFace* pFace1 = &pIndoor->pFaces[pOutline->uFace1ID]; + //BLVFace* pFace2 = &pIndoor->pFaces[pOutline->uFace2ID]; + if (pIndoor->pFaces[pOutline->uFace1ID].Visible() && pIndoor->pFaces[pOutline->uFace2ID].Visible()) { if ( pOutline->uFlags & 1 ) { if (bWizardEyeActive && uWizardEyeSkillLevel >= 3 && - (pFace1->Clickable() || pFace2->Clickable()) && - (pIndoor->pFaceExtras[pFace1->uFaceExtraID].uEventID || pIndoor->pFaceExtras[pFace2->uFaceExtraID].uEventID)) + (pIndoor->pFaces[pOutline->uFace1ID].Clickable() || pIndoor->pFaces[pOutline->uFace2ID].Clickable()) && + (pIndoor->pFaceExtras[pIndoor->pFaces[pOutline->uFace1ID].uFaceExtraID].uEventID || pIndoor->pFaceExtras[pIndoor->pFaces[pOutline->uFace2ID].uFaceExtraID].uEventID)) { if (uNumBlueFacesInBLVMinimap < 49) pBlueFacesInBLVMinimapIDs[uNumBlueFacesInBLVMinimap++] = i; @@ -1980,13 +1978,13 @@ } continue; } - if (pFace1->uAttributes & 0x80 || pFace2->uAttributes & 0x80) + if (pIndoor->pFaces[pOutline->uFace1ID].uAttributes & FACE_UNKNOW4 || pIndoor->pFaces[pOutline->uFace2ID].uAttributes & FACE_UNKNOW4) { pOutline->uFlags = pOutline->uFlags | 1; pIndoor->_visible_outlines[i >> 3] |= 1 << (7 - i % 8); if (bWizardEyeActive && uWizardEyeSkillLevel >= 3 && - (pFace1->Clickable() || pFace2->Clickable()) && - (pIndoor->pFaceExtras[pFace1->uFaceExtraID].uEventID || pIndoor->pFaceExtras[pFace2->uFaceExtraID].uEventID)) + (pIndoor->pFaces[pOutline->uFace1ID].Clickable() || pIndoor->pFaces[pOutline->uFace2ID].Clickable()) && + (pIndoor->pFaceExtras[pIndoor->pFaces[pOutline->uFace1ID].uFaceExtraID].uEventID || pIndoor->pFaceExtras[pIndoor->pFaces[pOutline->uFace2ID].uFaceExtraID].uEventID)) { if (uNumBlueFacesInBLVMinimap < 49) pBlueFacesInBLVMinimapIDs[uNumBlueFacesInBLVMinimap++] = i;