comparison mm7_2.cpp @ 723:256211e8243a

ODM_GetFloorLevel & BLV_GetFloorLevel
author Ritor1
date Thu, 21 Mar 2013 16:09:44 +0600
parents 70c5a87a1307
children 737d7fec67f0
comparison
equal deleted inserted replaced
722:70c5a87a1307 723:256211e8243a
5104 if ( uCurrentlyLoadedLevelType == LEVEL_Outdoor ) 5104 if ( uCurrentlyLoadedLevelType == LEVEL_Outdoor )
5105 goto LABEL_55; 5105 goto LABEL_55;
5106 v37 = pIndoor->GetSector(pPosX, a4, v36); 5106 v37 = pIndoor->GetSector(pPosX, a4, v36);
5107 if ( v37 == pSector ) 5107 if ( v37 == pSector )
5108 { 5108 {
5109 v38 = _46CEC3_get_floor_level(pPosX, a4, a3, v37, &uFaceID); 5109 v38 = BLV_GetFloorLevel(pPosX, a4, a3, v37, &uFaceID);
5110 v39 = v38; 5110 v39 = v38;
5111 if ( v38 != -30000 ) 5111 if ( v38 != -30000 )
5112 { 5112 {
5113 if ( abs(v38 - a3) <= 1024 ) 5113 if ( abs(v38 - a3) <= 1024 )
5114 { 5114 {
5235 v6->UpdateAnimation(); 5235 v6->UpdateAnimation();
5236 if ( uCurrentlyLoadedLevelType == LEVEL_Outdoor 5236 if ( uCurrentlyLoadedLevelType == LEVEL_Outdoor
5237 || (v22 = pParty->vPosition.z, 5237 || (v22 = pParty->vPosition.z,
5238 result = pIndoor->GetSector(v11, v14, pParty->vPosition.z), 5238 result = pIndoor->GetSector(v11, v14, pParty->vPosition.z),
5239 result == v21) 5239 result == v21)
5240 && (result = _46CEC3_get_floor_level(v11, v14, v22, result, &uFaceID), result != -30000) 5240 && (result = BLV_GetFloorLevel(v11, v14, v22, result, &uFaceID), result != -30000)
5241 && (result = abs(result - v22), result <= 1024) ) 5241 && (result = abs(result - v22), result <= 1024) )
5242 { 5242 {
5243 if ( v20 == uNumActors ) 5243 if ( v20 == uNumActors )
5244 ++uNumActors; 5244 ++uNumActors;
5245 v6->uSummonerID = 8 * v17 | 4; 5245 v6->uSummonerID = 8 * v17 | 4;
5547 v19.uIndex = v24; 5547 v19.uIndex = v24;
5548 v19.vPosition.y = v23 + pParty->vPosition.y; 5548 v19.vPosition.y = v23 + pParty->vPosition.y;
5549 v19.vPosition.z = pParty->vPosition.z; 5549 v19.vPosition.z = pParty->vPosition.z;
5550 v26 = 0; 5550 v26 = 0;
5551 v27 = 0; 5551 v27 = 0;
5552 v19.vPosition.z = sub_46D49E_prolly_get_world_y_under_party( 5552 v19.vPosition.z = ODM_GetFloorLevel(
5553 v19.vPosition.x, 5553 v19.vPosition.x,
5554 v23 + pParty->vPosition.y, 5554 v23 + pParty->vPosition.y,
5555 pParty->vPosition.z, 5555 pParty->vPosition.z,
5556 0, 5556 0,
5557 &v26, 5557 &v26,
5605 v19.vPosition.z = pParty->vPosition.z; 5605 v19.vPosition.z = pParty->vPosition.z;
5606 v19.uIndex = v24; 5606 v19.uIndex = v24;
5607 v17 = pIndoor->GetSector(v19.vPosition.x, v23 + pParty->vPosition.y, pParty->vPosition.z); 5607 v17 = pIndoor->GetSector(v19.vPosition.x, v23 + pParty->vPosition.y, pParty->vPosition.z);
5608 if ( v17 == v22 ) 5608 if ( v17 == v22 )
5609 { 5609 {
5610 v18 = _46CEC3_get_floor_level(v19.vPosition.x, v19.vPosition.y, v19.vPosition.z, v17, &uFaceID); 5610 v18 = BLV_GetFloorLevel(v19.vPosition.x, v19.vPosition.y, v19.vPosition.z, v17, &uFaceID);
5611 v19.vPosition.z = v18; 5611 v19.vPosition.z = v18;
5612 if ( v18 != -30000 ) 5612 if ( v18 != -30000 )
5613 { 5613 {
5614 if ( abs(v18 - pParty->vPosition.z) <= 1024 ) 5614 if ( abs(v18 - pParty->vPosition.z) <= 1024 )
5615 break; 5615 break;