mirror of
https://github.com/FWGS/hlsdk-xash3d
synced 2024-11-25 03:09:24 +01:00
Fix tripmines blowing up after loading save game in c1a3d with TRIPMINE_BEAM_DUPLICATION_FIX enabled (#332)
This commit is contained in:
parent
5db68d4076
commit
901d1947fb
@ -282,9 +282,23 @@ void CTripmineGrenade::BeamBreakThink( void )
|
|||||||
// respawn detect.
|
// respawn detect.
|
||||||
if( !m_pBeam )
|
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();
|
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 )
|
if( tr.pHit )
|
||||||
m_hOwner = CBaseEntity::Instance( tr.pHit ); // reset owner too
|
m_hOwner = CBaseEntity::Instance( tr.pHit ); // reset owner too
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
if( fabs( m_flBeamLength - tr.flFraction ) > 0.001f )
|
if( fabs( m_flBeamLength - tr.flFraction ) > 0.001f )
|
||||||
|
Loading…
Reference in New Issue
Block a user