diff options
Diffstat (limited to 'src/entities')
-rw-r--r-- | src/entities/Entity.cpp | 8 | ||||
-rw-r--r-- | src/entities/Entity.h | 20 |
2 files changed, 16 insertions, 12 deletions
diff --git a/src/entities/Entity.cpp b/src/entities/Entity.cpp index 0749e8e7..b795931f 100644 --- a/src/entities/Entity.cpp +++ b/src/entities/Entity.cpp @@ -13,11 +13,11 @@ #include "Glass.h" #include "Clock.h" #include "Weather.h" -#include "TimeCycle.h" +#include "Timecycle.h" #include "Bridge.h" #include "TrafficLights.h" #include "Coronas.h" -#include "Pointlights.h" +#include "PointLights.h" #include "Shadows.h" #include "Pickups.h" #include "SpecialFX.h" @@ -42,7 +42,7 @@ CEntity::CEntity(void) bUseCollisionRecords = false; bWasPostponed = false; - m_flagB2 = false; + bExplosionProof = false; bIsVisible = true; bHasCollided = false; bRenderScorched = false; @@ -535,7 +535,7 @@ CEntity::ResolveReferences(void) for(ref = m_pFirstReference; ref->next; ref = ref->next) ; ref->next = CReferences::pEmptyList; - CReferences::pEmptyList = ref; + CReferences::pEmptyList = m_pFirstReference; m_pFirstReference = nil; } } diff --git a/src/entities/Entity.h b/src/entities/Entity.h index 12a631d2..cdc9a173 100644 --- a/src/entities/Entity.h +++ b/src/entities/Entity.h @@ -13,14 +13,11 @@ enum eEntityType ENTITY_TYPE_PED, ENTITY_TYPE_OBJECT, ENTITY_TYPE_DUMMY, - ENTITY_TYPE_6, - ENTITY_TYPE_7, }; enum eEntityStatus { - // from SA MTA! let's hope they didn't change from III - STATUS_PLAYER = 0, + STATUS_PLAYER, STATUS_PLAYER_PLAYBACKFROMBUFFER, STATUS_SIMPLE, STATUS_PHYSICS, @@ -32,8 +29,6 @@ enum eEntityStatus STATUS_PLANE, STATUS_PLAYER_REMOTE, STATUS_PLAYER_DISABLED, - //STATUS_TRAILER, - //STATUS_SIMPLE_TRAILER }; class CEntity : public CPlaceable @@ -55,7 +50,7 @@ public: // flagsB uint32 bWasPostponed : 1; - uint32 m_flagB2 : 1; // explosion proof? + uint32 bExplosionProof : 1; uint32 bIsVisible : 1; uint32 bHasCollided : 1; // uint32 bRenderScorched : 1; @@ -78,7 +73,7 @@ public: uint32 bRemoveFromWorld : 1; uint32 bHasHitWall : 1; uint32 bImBeingRendered : 1; - uint32 m_flagD8 : 1; + uint32 m_flagD8 : 1; // used by cBuoyancy::ProcessBuoyancy uint32 bIsSubway : 1; // set when subway, but maybe different meaning? uint32 bDrawLast : 1; uint32 m_flagD40 : 1; @@ -122,6 +117,15 @@ public: bool IsObject(void) { return m_type == ENTITY_TYPE_OBJECT; } bool IsDummy(void) { return m_type == ENTITY_TYPE_DUMMY; } + RpAtomic *GetAtomic(void) { + assert(RwObjectGetType(m_rwObject) == rpATOMIC); + return (RpAtomic*)m_rwObject; + } + RpClump *GetClump(void) { + assert(RwObjectGetType(m_rwObject) == rpCLUMP); + return (RpClump*)m_rwObject; + } + void GetBoundCentre(CVector &out); CVector GetBoundCentre(void) { CVector v; GetBoundCentre(v); return v; } float GetBoundRadius(void) { return CModelInfo::GetModelInfo(m_modelIndex)->GetColModel()->boundingSphere.radius; } |