mirror of
https://github.com/mapbase-source/source-sdk-2013.git
synced 2024-12-25 06:15:30 +03:00
New response context-based check for TLK_SPOTTED_HEADCRAB_LEAVING_ZOMBIE (because some death types, such as serverside ragdolling, remove the zombie instantly)
This commit is contained in:
parent
3ce8a35567
commit
e1c890a011
@ -2544,6 +2544,9 @@ void CNPC_BaseZombie::ReleaseHeadcrab( const Vector &vecOrigin, const Vector &ve
|
||||
#ifdef MAPBASE
|
||||
// Inherit some misc. properties
|
||||
pGib->m_iViewHideFlags = m_iViewHideFlags;
|
||||
|
||||
// Add response context for companion response (more reliable than checking for post-death zombie entity)
|
||||
pCrab->AddContext( "from_zombie", "1", 2.0f );
|
||||
#endif
|
||||
|
||||
pGib->SetOwnerEntity( this );
|
||||
|
@ -659,10 +659,15 @@ void CNPC_PlayerCompanion::DoCustomSpeechAI( void )
|
||||
{
|
||||
SpeakIfAllowed( "TLK_SPOTTED_INCOMING_HEADCRAB" );
|
||||
}
|
||||
// If we see a headcrab leaving a zombie that just died, mention it
|
||||
else if ( pHC->GetOwnerEntity() && ( pHC->GetOwnerEntity()->Classify() == CLASS_ZOMBIE ) && !pHC->GetOwnerEntity()->IsAlive() )
|
||||
else
|
||||
{
|
||||
SpeakIfAllowed( "TLK_SPOTTED_HEADCRAB_LEAVING_ZOMBIE" );
|
||||
// If we see a headcrab leaving a zombie that just died, mention it
|
||||
// (Note that this is now a response context since some death types remove the zombie instantly)
|
||||
int nContext = pHC->FindContextByName( "from_zombie" );
|
||||
if ( nContext > -1 && !ContextExpired( nContext ) ) // pHC->GetOwnerEntity() && ( pHC->GetOwnerEntity()->Classify() == CLASS_ZOMBIE ) && !pHC->GetOwnerEntity()->IsAlive()
|
||||
{
|
||||
SpeakIfAllowed( "TLK_SPOTTED_HEADCRAB_LEAVING_ZOMBIE" );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user