Browse Source

game(hl1): fix gibbing

pull/121/head
nillerusr 2 years ago
parent
commit
216bbf1baa
  1. 2
      game/server/hl1/hl1_ai_basenpc.cpp
  2. 2
      game/server/hl1/hl1_ents.cpp
  3. 4
      game/server/hl1/hl1_npc_hgrunt.cpp
  4. 4
      game/server/hl1/hl1_npc_houndeye.cpp
  5. 10
      game/server/hl1/hl1_npc_talker.cpp

2
game/server/hl1/hl1_ai_basenpc.cpp

@ -180,7 +180,7 @@ bool CHL1BaseNPC::CorpseGib( const CTakeDamageInfo &info ) @@ -180,7 +180,7 @@ bool CHL1BaseNPC::CorpseGib( const CTakeDamageInfo &info )
CSoundEnt::InsertSound( SOUND_MEAT, GetAbsOrigin(), 256, 0.5f, this );
/// BaseClass::CorpseGib( info );
BaseClass::CorpseGib( info );
return true;
}

2
game/server/hl1/hl1_ents.cpp

@ -1587,7 +1587,7 @@ void CHL1Gib::Spawn( const char *szGibModel ) @@ -1587,7 +1587,7 @@ void CHL1Gib::Spawn( const char *szGibModel )
SetNextThink( gpGlobals->curtime + 4 );
m_lifeTime = 25;
m_lifeTime = 250;
SetThink ( &CHL1Gib::WaitTillLand );
SetTouch ( &CHL1Gib::BounceGibTouch );

4
game/server/hl1/hl1_npc_hgrunt.cpp

@ -487,10 +487,10 @@ int CNPC_HGrunt::SquadRecruit( int searchRadius, int maxMembers ) @@ -487,10 +487,10 @@ int CNPC_HGrunt::SquadRecruit( int searchRadius, int maxMembers )
}
else
{
static char szSquadName[64];
char szSquadName[64];
Q_snprintf( szSquadName, sizeof( szSquadName ), "squad%d\n", g_iSquadIndex );
m_SquadName = MAKE_STRING( szSquadName );
m_SquadName = AllocPooledString( szSquadName );
while ( ( pEntity = gEntList.FindEntityInSphere( pEntity, GetAbsOrigin(), searchRadius ) ) != NULL )
{

4
game/server/hl1/hl1_npc_houndeye.cpp

@ -994,10 +994,10 @@ int CNPC_Houndeye::SquadRecruit( int searchRadius, int maxMembers ) @@ -994,10 +994,10 @@ int CNPC_Houndeye::SquadRecruit( int searchRadius, int maxMembers )
}
else
{
static char szSquadName[64];
char szSquadName[64];
Q_snprintf( szSquadName, sizeof( szSquadName ), "squad%d\n", s_iSquadIndex );
m_SquadName = MAKE_STRING( szSquadName );
m_SquadName = AllocPooledString( szSquadName );
while ( ( pEntity = gEntList.FindEntityInSphere( pEntity, GetAbsOrigin(), searchRadius ) ) != NULL && squadCount < maxMembers )
{

10
game/server/hl1/hl1_npc_talker.cpp

@ -572,21 +572,23 @@ void CHL1NPCTalker::SetHeadDirection( const Vector &vTargetPos, float flInterval @@ -572,21 +572,23 @@ void CHL1NPCTalker::SetHeadDirection( const Vector &vTargetPos, float flInterval
bool CHL1NPCTalker::CorpseGib( const CTakeDamageInfo &info )
{
CEffectData data;
data.m_vOrigin = WorldSpaceCenter();
data.m_vNormal = data.m_vOrigin - info.GetDamagePosition();
VectorNormalize( data.m_vNormal );
data.m_flScale = RemapVal( m_iHealth, 0, -500, 1, 3 );
data.m_flScale = clamp( data.m_flScale, 1, 3 );
data.m_nMaterial = 1;
data.m_nMaterial = 1;
data.m_nHitBox = -m_iHealth;
data.m_nColor = BloodColor();
DispatchEffect( "HL1Gib", data );
BaseClass::CorpseGib( info );
CSoundEnt::InsertSound( SOUND_MEAT, GetAbsOrigin(), 256, 0.5f, this );
return true;

Loading…
Cancel
Save