Browse Source

Fix tripmines blowing up after loading save game in c1a3d with TRIPMINE_BEAM_DUPLICATION_FIX enabled (#332)

fix-cwd-path
Roman Chistokhodov 2 years ago committed by GitHub
parent
commit
901d1947fb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 14
      dlls/tripmine.cpp

14
dlls/tripmine.cpp

@ -282,9 +282,23 @@ void CTripmineGrenade::BeamBreakThink( void ) @@ -282,9 +282,23 @@ void CTripmineGrenade::BeamBreakThink( void )
// respawn detect.
if( !m_pBeam )
{
#if TRIPMINE_BEAM_DUPLICATION_FIX
// Use the same trace parameters as the original trace above so the right entity is hit.
TraceResult tr2;
UTIL_TraceLine( pev->origin + m_vecDir * 8.0f, pev->origin - m_vecDir * 32.0f, dont_ignore_monsters, ENT( pev ), &tr2 );
#endif
MakeBeam();
#if TRIPMINE_BEAM_DUPLICATION_FIX
if( tr2.pHit )
{
// reset owner too
pev->owner = tr2.pHit;
m_hOwner = CBaseEntity::Instance( tr2.pHit );
}
#else
if( tr.pHit )
m_hOwner = CBaseEntity::Instance( tr.pHit ); // reset owner too
#endif
}
if( fabs( m_flBeamLength - tr.flFraction ) > 0.001f )

Loading…
Cancel
Save