Counter Strike : Global Offensive Source Code
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//========= Copyright � 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================//
#ifndef WEAPON_MOLOTOV_H
#define WEAPON_MOLOTOV_H
#ifdef _WIN32
#pragma once
#endif
#include "weapon_basecsgrenade.h"
#if defined( CLIENT_DLL )
#define CMolotovGrenade C_MolotovGrenade
#define CIncendiaryGrenade C_IncendiaryGrenade
#endif
//-----------------------------------------------------------------------------
// Molotov grenades
//-----------------------------------------------------------------------------
class CMolotovGrenade : public CBaseCSGrenade { public: DECLARE_CLASS( CMolotovGrenade, CBaseCSGrenade ); DECLARE_NETWORKCLASS(); DECLARE_PREDICTABLE();
CMolotovGrenade() {}
virtual CSWeaponID GetCSWeaponID( void ) const { return WEAPON_MOLOTOV; }
#ifdef CLIENT_DLL
virtual bool Simulate( void ); virtual void UpdateParticles( void ); virtual void OnParticleEffectDeleted( CNewParticleEffect *pParticleEffect ); #else
DECLARE_DATADESC();
virtual void EmitGrenade( Vector vecSrc, QAngle vecAngles, Vector vecVel, AngularImpulse angImpulse, CBasePlayer *pPlayer, const CCSWeaponInfo& weaponInfo ); virtual void Precache( void ); #endif
virtual void Drop( const Vector& vecVelocity );
private: CMolotovGrenade( const CMolotovGrenade& );
private: #if defined( CLIENT_DLL )
CUtlReference<CNewParticleEffect> m_molotovParticleEffect; #endif
};
//-----------------------------------------------------------------------------
// Incendiary grenades
//-----------------------------------------------------------------------------
class CIncendiaryGrenade : public CMolotovGrenade { public: DECLARE_CLASS( CIncendiaryGrenade, CMolotovGrenade ); DECLARE_NETWORKCLASS(); //DECLARE_PREDICTABLE();
CIncendiaryGrenade() {}
virtual CSWeaponID GetCSWeaponID( void ) const { return WEAPON_INCGRENADE; }
#ifdef CLIENT_DLL
//virtual bool Simulate( void );
//virtual void UpdateParticles( void );
//virtual void OnParticleEffectDeleted( CNewParticleEffect *pParticleEffect );
#else
//DECLARE_DATADESC();
virtual void EmitGrenade( Vector vecSrc, QAngle vecAngles, Vector vecVel, AngularImpulse angImpulse, CBasePlayer *pPlayer, const CCSWeaponInfo& weaponInfo ); virtual void Precache( void ); #endif
private: CIncendiaryGrenade( const CIncendiaryGrenade& );
/*
private: #if defined( CLIENT_DLL )
CUtlReference<CNewParticleEffect> m_molotovParticleEffect; #endif
*/ };
#endif // WEAPON_MOLOTOV_H
|