diff options
author | Sergeanur <s.anureev@yandex.ua> | 2020-05-06 18:32:57 +0200 |
---|---|---|
committer | Sergeanur <s.anureev@yandex.ua> | 2020-05-06 18:32:57 +0200 |
commit | 6ad66fb2d78360053febb3369a7ec448ffec73fd (patch) | |
tree | 6c0f21a5f8ecc2cb7facd55f3944b65c1c3a6d0e /src/entities | |
parent | CSphere and CBox for CColModel (diff) | |
parent | Merge pull request #517 from Nick007J/master (diff) | |
download | re3-6ad66fb2d78360053febb3369a7ec448ffec73fd.tar re3-6ad66fb2d78360053febb3369a7ec448ffec73fd.tar.gz re3-6ad66fb2d78360053febb3369a7ec448ffec73fd.tar.bz2 re3-6ad66fb2d78360053febb3369a7ec448ffec73fd.tar.lz re3-6ad66fb2d78360053febb3369a7ec448ffec73fd.tar.xz re3-6ad66fb2d78360053febb3369a7ec448ffec73fd.tar.zst re3-6ad66fb2d78360053febb3369a7ec448ffec73fd.zip |
Diffstat (limited to 'src/entities')
-rw-r--r-- | src/entities/Entity.h | 1 | ||||
-rw-r--r-- | src/entities/Physical.cpp | 14 |
2 files changed, 8 insertions, 7 deletions
diff --git a/src/entities/Entity.h b/src/entities/Entity.h index 0534de27..aecb1bc0 100644 --- a/src/entities/Entity.h +++ b/src/entities/Entity.h @@ -98,6 +98,7 @@ public: eEntityStatus GetStatus() const { return (eEntityStatus)m_status; } void SetStatus(eEntityStatus status) { m_status = status; } CColModel *GetColModel(void) { return CModelInfo::GetModelInfo(m_modelIndex)->GetColModel(); } + bool IsStatic(void) { return bIsStatic; } #ifdef COMPATIBLE_SAVES void SaveEntityFlags(uint8*& buf); void LoadEntityFlags(uint8*& buf); diff --git a/src/entities/Physical.cpp b/src/entities/Physical.cpp index fe270645..bbe69167 100644 --- a/src/entities/Physical.cpp +++ b/src/entities/Physical.cpp @@ -324,7 +324,7 @@ CPhysical::ProcessEntityCollision(CEntity *ent, CColPoint *colpoints) AddCollisionRecord(ent); if(!ent->IsBuilding()) // Can't this catch dummies too? ((CPhysical*)ent)->AddCollisionRecord(this); - if(ent->IsBuilding() || ent->bIsStatic) + if(ent->IsBuilding() || ent->IsStatic()) this->bHasHitWall = true; } return numSpheres; @@ -539,7 +539,7 @@ CPhysical::ApplyCollision(CPhysical *B, CColPoint &colpoint, float &impulseA, fl timestepB = B->bIsHeavy ? 2.0f : 1.0f; float speedA, speedB; - if(B->bIsStatic){ + if(B->IsStatic()){ if(A->bPedPhysics){ speedA = DotProduct(A->m_vecMoveSpeed, colpoint.normal); if(speedA < 0.0f){ @@ -622,7 +622,7 @@ CPhysical::ApplyCollision(CPhysical *B, CColPoint &colpoint, float &impulseA, fl } } - if(B->bIsStatic) + if(B->IsStatic()) return false; if(!B->bInfiniteMass) B->AddToMovingList(); @@ -1079,7 +1079,7 @@ CPhysical::ProcessShiftSectorList(CPtrList *lists) CObject *Aobj = (CObject*)A; if(Aobj->ObjectCreatedBy != TEMP_OBJECT && !Aobj->bHasBeenDamaged && - Aobj->bIsStatic){ + Aobj->IsStatic()){ if(Aobj->m_pCollidingEntity == B) Aobj->m_pCollidingEntity = nil; }else if(Aobj->m_pCollidingEntity != B){ @@ -1096,7 +1096,7 @@ CPhysical::ProcessShiftSectorList(CPtrList *lists) CObject *Bobj = (CObject*)B; if(Bobj->ObjectCreatedBy != TEMP_OBJECT && !Bobj->bHasBeenDamaged && - Bobj->bIsStatic){ + Bobj->IsStatic()){ if(Bobj->m_pCollidingEntity == A) Bobj->m_pCollidingEntity = nil; }else if(Bobj->m_pCollidingEntity != A){ @@ -1414,7 +1414,7 @@ CPhysical::ProcessCollisionSectorList(CPtrList *lists) skipCollision = true; else if(Aobj->ObjectCreatedBy == TEMP_OBJECT || Aobj->bHasBeenDamaged || - !Aobj->bIsStatic){ + !Aobj->IsStatic()){ if(Aobj->m_pCollidingEntity == B) skipCollision = true; else{ @@ -1433,7 +1433,7 @@ CPhysical::ProcessCollisionSectorList(CPtrList *lists) skipCollision = true; else if(Bobj->ObjectCreatedBy == TEMP_OBJECT || Bobj->bHasBeenDamaged || - !Bobj->bIsStatic){ + !Bobj->IsStatic()){ if(Bobj->m_pCollidingEntity == A) skipCollision = true; else{ |