diff options
author | Sergeanur <s.anureev@yandex.ua> | 2020-05-05 17:34:46 +0200 |
---|---|---|
committer | Sergeanur <s.anureev@yandex.ua> | 2020-05-05 17:34:46 +0200 |
commit | 22e8b0e419ad811c977c67ea2f2c06d53ea3be5e (patch) | |
tree | 655dc6cff470ac28d19678c392a0aebb49cea937 /src/entities/Entity.cpp | |
parent | Merge branch 'master' into miami (diff) | |
download | re3-22e8b0e419ad811c977c67ea2f2c06d53ea3be5e.tar re3-22e8b0e419ad811c977c67ea2f2c06d53ea3be5e.tar.gz re3-22e8b0e419ad811c977c67ea2f2c06d53ea3be5e.tar.bz2 re3-22e8b0e419ad811c977c67ea2f2c06d53ea3be5e.tar.lz re3-22e8b0e419ad811c977c67ea2f2c06d53ea3be5e.tar.xz re3-22e8b0e419ad811c977c67ea2f2c06d53ea3be5e.tar.zst re3-22e8b0e419ad811c977c67ea2f2c06d53ea3be5e.zip |
Diffstat (limited to '')
-rw-r--r-- | src/entities/Entity.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/entities/Entity.cpp b/src/entities/Entity.cpp index 1f85015e..955f32a8 100644 --- a/src/entities/Entity.cpp +++ b/src/entities/Entity.cpp @@ -63,8 +63,10 @@ CEntity::CEntity(void) bMeleeProof = false; bOnlyDamagedByPlayer = false; bStreamingDontDelete = false; +#ifdef GTA_ZONECULL bZoneCulled = false; bZoneCulled2 = false; +#endif bRemoveFromWorld = false; bHasHitWall = false; @@ -151,6 +153,17 @@ CEntity::GetIsOnScreenComplex(void) return TheCamera.IsBoxVisible(boundBox, &TheCamera.GetCameraMatrix()); } +bool +CEntity::GetIsOnScreenAndNotCulled(void) +{ +#ifdef GTA_ZONECULL + return GetIsOnScreen() && CRenderer::IsEntityCullZoneVisible(this); +#else + return GetIsOnScreen(); +#endif +} + + void CEntity::Add(void) { @@ -962,8 +975,10 @@ CEntity::SaveEntityFlags(uint8*& buf) if (bMeleeProof) tmp |= BIT(27); if (bOnlyDamagedByPlayer) tmp |= BIT(28); if (bStreamingDontDelete) tmp |= BIT(29); +#ifdef GTA_ZONECULL if (bZoneCulled) tmp |= BIT(30); if (bZoneCulled2) tmp |= BIT(31); +#endif WriteSaveBuf<uint32>(buf, tmp); @@ -1015,8 +1030,10 @@ CEntity::LoadEntityFlags(uint8*& buf) bMeleeProof = !!(tmp & BIT(27)); bOnlyDamagedByPlayer = !!(tmp & BIT(28)); bStreamingDontDelete = !!(tmp & BIT(29)); +#ifdef GTA_ZONECULL bZoneCulled = !!(tmp & BIT(30)); bZoneCulled2 = !!(tmp & BIT(31)); +#endif tmp = ReadSaveBuf<uint32>(buf); |