diff options
Diffstat (limited to 'src/entities')
-rw-r--r-- | src/entities/Entity.cpp | 6 | ||||
-rw-r--r-- | src/entities/Entity.h | 2 | ||||
-rw-r--r-- | src/entities/Physical.cpp | 4 |
3 files changed, 7 insertions, 5 deletions
diff --git a/src/entities/Entity.cpp b/src/entities/Entity.cpp index 68486a3c..41a2e2bd 100644 --- a/src/entities/Entity.cpp +++ b/src/entities/Entity.cpp @@ -81,7 +81,7 @@ CEntity::CEntity(void) m_flagE2 = false; bOffscreen = false; bIsStaticWaitingForCollision = false; - m_flagE10 = false; + bDontStream = false; bUnderwater = false; bHasPreRenderEffects = false; @@ -1083,7 +1083,7 @@ CEntity::SaveEntityFlags(uint8*& buf) if (m_flagE2) tmp |= BIT(9); if (bOffscreen) tmp |= BIT(10); if (bIsStaticWaitingForCollision) tmp |= BIT(11); - if (m_flagE10) tmp |= BIT(12); + if (bDontStream) tmp |= BIT(12); if (bUnderwater) tmp |= BIT(13); if (bHasPreRenderEffects) tmp |= BIT(14); @@ -1139,7 +1139,7 @@ CEntity::LoadEntityFlags(uint8*& buf) m_flagE2 = !!(tmp & BIT(9)); bOffscreen = !!(tmp & BIT(10)); bIsStaticWaitingForCollision = !!(tmp & BIT(11)); - m_flagE10 = !!(tmp & BIT(12)); + bDontStream = !!(tmp & BIT(12)); bUnderwater = !!(tmp & BIT(13)); bHasPreRenderEffects = !!(tmp & BIT(14)); } diff --git a/src/entities/Entity.h b/src/entities/Entity.h index e7d402d0..f506017a 100644 --- a/src/entities/Entity.h +++ b/src/entities/Entity.h @@ -87,7 +87,7 @@ public: uint32 m_flagE2 : 1; uint32 bOffscreen : 1; // offscreen flag. This can only be trusted when it is set to true uint32 bIsStaticWaitingForCollision : 1; // this is used by script created entities - they are static until the collision is loaded below them - uint32 m_flagE10 : 1; // probably bDontStream + uint32 bDontStream : 1; // tell the streaming not to stream me uint32 bUnderwater : 1; // this object is underwater change drawing order uint32 bHasPreRenderEffects : 1; // Object has a prerender effects attached to it diff --git a/src/entities/Physical.cpp b/src/entities/Physical.cpp index 02feb5cb..f97194d0 100644 --- a/src/entities/Physical.cpp +++ b/src/entities/Physical.cpp @@ -478,7 +478,9 @@ CPhysical::ApplySpringCollisionAlt(float springConst, CVector &springDir, CVecto if(DotProduct(springDir, forceDir) > 0.0f) forceDir *= -1.0f; float step = Min(CTimer::GetTimeStep(), 3.0f); - float impulse = -GRAVITY*m_fMass*step * springConst * compression * bias*2.0f; + float impulse = GRAVITY*m_fMass*step * springConst * compression * bias*2.0f; + if(bIsHeavy) + impulse *= 0.75f; ApplyMoveForce(forceDir*impulse); ApplyTurnForce(forceDir*impulse, point); } |