blob: d0f84e0e99ef602186e9bc8ab7080aa7dc4e5d73 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================//
#include "cbase.h"
#include "tf_weaponbase_merasmus_grenade.h"
// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"
IMPLEMENT_NETWORKCLASS_ALIASED( TFWeaponBaseMerasmusGrenade, DT_TFWeaponBaseMerasmusGrenade )
LINK_ENTITY_TO_CLASS( tf_weaponbase_merasmus_grenade, CTFWeaponBaseMerasmusGrenade );
BEGIN_NETWORK_TABLE( CTFWeaponBaseMerasmusGrenade, DT_TFWeaponBaseMerasmusGrenade )
END_NETWORK_TABLE()
int CTFWeaponBaseMerasmusGrenade::GetDamageCustom()
{
return TF_DMG_CUSTOM_MERASMUS_GRENADE;
}
int CTFWeaponBaseMerasmusGrenade::GetCustomParticleIndex()
{
return GetParticleSystemIndex( "merasmus_dazed_explosion" );
}
#ifdef CLIENT_DLL
int CTFWeaponBaseMerasmusGrenade::DrawModel( int flags )
{
float flAliveTime = gpGlobals->curtime - m_flSpawnTime;
const float flNoDrawTime = 0.1f;
const float flScaleTime = 0.1f;
// Don't draw the rocket for the first bit of life
if( flAliveTime < flNoDrawTime )
{
return 0;
}
// Scale up as we become visible
if( flAliveTime < ( flNoDrawTime + flScaleTime ) )
{
float flSize = RemapVal( flAliveTime, flNoDrawTime, flNoDrawTime + flScaleTime, 0.f, 1.f );
SetModelScale( flSize );
}
return BaseClass::DrawModel( flags );
}
#endif
|