comparison UI/UiGame.cpp @ 2203:4bfee77e900d

DoInteractionWithTopmostZObject cleaned
author Ritor1
date Tue, 04 Feb 2014 17:29:04 +0600
parents d9caf2b3d8d5
children db94443ea4e7
comparison
equal deleted inserted replaced
2202:44d956d4f838 2203:4bfee77e900d
682 //----- (004443D5) -------------------------------------------------------- 682 //----- (004443D5) --------------------------------------------------------
683 const char *GameUI_GetMinimapHintText() 683 const char *GameUI_GetMinimapHintText()
684 { 684 {
685 double v3; // st7@1 685 double v3; // st7@1
686 int v7; // eax@4 686 int v7; // eax@4
687 ODMFace *pFace; // eax@6
688 const char *v14; // eax@8 687 const char *v14; // eax@8
689 char *result; // eax@12 688 char *result; // eax@12
690 unsigned int pMapID; // eax@14 689 unsigned int pMapID; // eax@14
691 int global_coord_X; // [sp+10h] [bp-1Ch]@1 690 int global_coord_X; // [sp+10h] [bp-1Ch]@1
692 int global_coord_Y; // [sp+14h] [bp-18h]@1 691 int global_coord_Y; // [sp+14h] [bp-18h]@1
716 { 715 {
717 if ( pOutdoor->pBModels[j].uNumFaces ) 716 if ( pOutdoor->pBModels[j].uNumFaces )
718 { 717 {
719 for ( uint i = 0; i < (uint)pOutdoor->pBModels[j].uNumFaces; ++i ) 718 for ( uint i = 0; i < (uint)pOutdoor->pBModels[j].uNumFaces; ++i )
720 { 719 {
721 pFace = &pOutdoor->pBModels[j].pFaces[i]; 720 if ( pOutdoor->pBModels[j].pFaces[i].sCogTriggeredID )
722 if ( pFace->sCogTriggeredID )
723 { 721 {
724 if ( !(BYTE2(pFace->uAttributes) & 0x10) ) 722 if ( !(pOutdoor->pBModels[j].pFaces[i].uAttributes & FACE_UNKNOW) )
725 { 723 {
726 v14 = GetEventHintString(pFace->sCogTriggeredID); 724 v14 = GetEventHintString(pOutdoor->pBModels[j].pFaces[i].sCogTriggeredID);
727 if ( v14 ) 725 if ( v14 )
728 { 726 {
729 if ( _stricmp(v14, "") ) 727 if ( _stricmp(v14, "") )
730 result = (char *)v14; 728 result = (char *)v14;
731 } 729 }
1952 uNumBlueFacesInBLVMinimap = 0; 1950 uNumBlueFacesInBLVMinimap = 0;
1953 1951
1954 for (uint i = 0; i < (uint)pIndoor->pMapOutlines->uNumOutlines; ++i) 1952 for (uint i = 0; i < (uint)pIndoor->pMapOutlines->uNumOutlines; ++i)
1955 { 1953 {
1956 BLVMapOutline* pOutline = &pIndoor->pMapOutlines->pOutlines[i]; 1954 BLVMapOutline* pOutline = &pIndoor->pMapOutlines->pOutlines[i];
1957 BLVFace* pFace1 = pIndoor->pFaces + pOutline->uFace1ID; 1955 //BLVFace* pFace1 = &pIndoor->pFaces[pOutline->uFace1ID];
1958 BLVFace* pFace2 = pIndoor->pFaces + pOutline->uFace2ID; 1956 //BLVFace* pFace2 = &pIndoor->pFaces[pOutline->uFace2ID];
1959 if (pFace1->Visible() && pFace2->Visible()) 1957 if (pIndoor->pFaces[pOutline->uFace1ID].Visible() && pIndoor->pFaces[pOutline->uFace2ID].Visible())
1960 { 1958 {
1961 if ( pOutline->uFlags & 1 ) 1959 if ( pOutline->uFlags & 1 )
1962 { 1960 {
1963 if (bWizardEyeActive && uWizardEyeSkillLevel >= 3 && 1961 if (bWizardEyeActive && uWizardEyeSkillLevel >= 3 &&
1964 (pFace1->Clickable() || pFace2->Clickable()) && 1962 (pIndoor->pFaces[pOutline->uFace1ID].Clickable() || pIndoor->pFaces[pOutline->uFace2ID].Clickable()) &&
1965 (pIndoor->pFaceExtras[pFace1->uFaceExtraID].uEventID || pIndoor->pFaceExtras[pFace2->uFaceExtraID].uEventID)) 1963 (pIndoor->pFaceExtras[pIndoor->pFaces[pOutline->uFace1ID].uFaceExtraID].uEventID || pIndoor->pFaceExtras[pIndoor->pFaces[pOutline->uFace2ID].uFaceExtraID].uEventID))
1966 { 1964 {
1967 if (uNumBlueFacesInBLVMinimap < 49) 1965 if (uNumBlueFacesInBLVMinimap < 49)
1968 pBlueFacesInBLVMinimapIDs[uNumBlueFacesInBLVMinimap++] = i; 1966 pBlueFacesInBLVMinimapIDs[uNumBlueFacesInBLVMinimap++] = i;
1969 } 1967 }
1970 else 1968 else
1978 v15 = 100; 1976 v15 = 100;
1979 pRenderer->RasterLine2D(pX, pY, pZ, pW, viewparams->pPalette[-v15 + 200]); 1977 pRenderer->RasterLine2D(pX, pY, pZ, pW, viewparams->pPalette[-v15 + 200]);
1980 } 1978 }
1981 continue; 1979 continue;
1982 } 1980 }
1983 if (pFace1->uAttributes & 0x80 || pFace2->uAttributes & 0x80) 1981 if (pIndoor->pFaces[pOutline->uFace1ID].uAttributes & FACE_UNKNOW4 || pIndoor->pFaces[pOutline->uFace2ID].uAttributes & FACE_UNKNOW4)
1984 { 1982 {
1985 pOutline->uFlags = pOutline->uFlags | 1; 1983 pOutline->uFlags = pOutline->uFlags | 1;
1986 pIndoor->_visible_outlines[i >> 3] |= 1 << (7 - i % 8); 1984 pIndoor->_visible_outlines[i >> 3] |= 1 << (7 - i % 8);
1987 if (bWizardEyeActive && uWizardEyeSkillLevel >= 3 && 1985 if (bWizardEyeActive && uWizardEyeSkillLevel >= 3 &&
1988 (pFace1->Clickable() || pFace2->Clickable()) && 1986 (pIndoor->pFaces[pOutline->uFace1ID].Clickable() || pIndoor->pFaces[pOutline->uFace2ID].Clickable()) &&
1989 (pIndoor->pFaceExtras[pFace1->uFaceExtraID].uEventID || pIndoor->pFaceExtras[pFace2->uFaceExtraID].uEventID)) 1987 (pIndoor->pFaceExtras[pIndoor->pFaces[pOutline->uFace1ID].uFaceExtraID].uEventID || pIndoor->pFaceExtras[pIndoor->pFaces[pOutline->uFace2ID].uFaceExtraID].uEventID))
1990 { 1988 {
1991 if (uNumBlueFacesInBLVMinimap < 49) 1989 if (uNumBlueFacesInBLVMinimap < 49)
1992 pBlueFacesInBLVMinimapIDs[uNumBlueFacesInBLVMinimap++] = i; 1990 pBlueFacesInBLVMinimapIDs[uNumBlueFacesInBLVMinimap++] = i;
1993 } 1991 }
1994 else 1992 else