cl_dll/c_gib.cpp
78910111213141516171819
#include "cbase.h"
#include "vcollide_parse.h"
#include "c_gib.h"
// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"
//NOTENOTE: This is not yet coupled with the server-side implementation of CGib
// This is only a client-side version of gibs at the moment
//-----------------------------------------------------------------------------
// Purpose:
//-----------------------------------------------------------------------------
7891011121314151617181920212223242526272829
#include "cbase.h"
#include "vcollide_parse.h"
#include "c_gib.h"
#include "debugoverlay_shared.h"
#include "iefx.h"
#include "decals.h"
// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"
int C_Gib::m_iBloodDecal = -1;
//NOTENOTE: This is not yet coupled with the server-side implementation of CGib
// This is only a client-side version of gibs at the moment
C_Gib::C_Gib()
{
m_bDecal = true;
}
//-----------------------------------------------------------------------------
// Purpose:
//-----------------------------------------------------------------------------
808182838485
// failed to create a physics object
Release();
return false;
}
SetNextClientThink( gpGlobals->curtime + flLifetime );
90919293949596979899
// failed to create a physics object
Release();
return false;
//SetSolid(SOLID_BBOX);
//AddSolidFlags(FSOLID_NOT_STANDABLE);
//SetMoveType(MOVETYPE_FLYGRAVITY, MOVECOLLIDE_FLY_BOUNCE);
}
SetNextClientThink( gpGlobals->curtime + flLifetime );
129130131132133
//-----------------------------------------------------------------------------
void C_Gib::HitSurface( C_BaseEntity *pOther )
{
//TODO: Implement splatter or effects in child versions
}
143144145146147148149150151152153154155156157158159160161
//-----------------------------------------------------------------------------
void C_Gib::HitSurface( C_BaseEntity *pOther )
{
// Already done a decal
if (m_bDecal)
return;
if (m_iBloodDecal == -1)
{
m_iBloodDecal = decalsystem->GetDecalIndexForName("Blood");
}
if (m_iBloodDecal >= 0 )
{
effects->DecalShoot(m_iBloodDecal, pOther->entindex(), pOther->GetModel(), pOther->GetAbsOrigin(), pOther->GetAbsAngles(), GetAbsOrigin(), 0, 0);
}
m_bDecal = true;
}