Skip to content

Commit

Permalink
Implements ValveSoftware#416
Browse files Browse the repository at this point in the history
  • Loading branch information
Bitl committed Feb 22, 2025
1 parent f775ead commit d941f0a
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions src/game/shared/ragdoll_shared.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -889,15 +889,29 @@ void CRagdollLRURetirement::Update( float frametime ) // EPISODIC VERSION

for ( i = m_LRU.Head(); i < m_LRU.InvalidIndex(); i = next )
{
#ifndef BDSBASE
CBaseAnimating *pRagdoll = m_LRU[i].Get();
#endif

next = m_LRU.Next(i);
#ifndef BDSBASE
IPhysicsObject *pObject = pRagdoll->VPhysicsGetObject();
if ( pRagdoll && (pRagdoll->GetEffectEntity() || ( pObject && !pObject->IsAsleep()) ) )
continue;
#endif

#ifdef BDSBASE
CBaseAnimating* pRagdoll = m_LRU[i].Get();
#endif

if ( pRagdoll )
{
#ifdef BDSBASE
IPhysicsObject* pObject = pRagdoll->VPhysicsGetObject();
if (pRagdoll && (pRagdoll->GetEffectEntity() || (pObject && !pObject->IsAsleep())))
continue;
#endif

// float distToPlayer = (pPlayer->GetAbsOrigin() - pRagdoll->GetAbsOrigin()).LengthSqr();
float distToPlayer = (PlayerOrigin - pRagdoll->GetAbsOrigin()).LengthSqr();

Expand Down Expand Up @@ -932,10 +946,20 @@ void CRagdollLRURetirement::Update( float frametime ) // EPISODIC VERSION

CBaseAnimating *pRagdoll = m_LRU[i].Get();

#ifdef BDSBASE
if (pRagdoll)
{
//Just ignore it until we're done burning/dissolving.
IPhysicsObject* pObject = pRagdoll->VPhysicsGetObject();
if (pRagdoll->GetEffectEntity() || (pObject && !pObject->IsAsleep()))
continue;
}
#else
//Just ignore it until we're done burning/dissolving.
IPhysicsObject *pObject = pRagdoll->VPhysicsGetObject();
if ( pRagdoll && (pRagdoll->GetEffectEntity() || ( pObject && !pObject->IsAsleep()) ) )
continue;
#endif

#ifdef CLIENT_DLL
m_LRU[ i ]->SUB_Remove();
Expand Down

0 comments on commit d941f0a

Please sign in to comment.