sqwarmed/sdk_src/game/server/fire_smoke.h

79 lines
1.9 KiB
C++

//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//
//=============================================================================//
#ifndef FIRE_SMOKE_H
#define FIRE_SMOKE_H
#pragma once
#include "baseparticleentity.h"
//==================================================
// CBaseFire
//==================================================
//NOTENOTE: Reserved for all descendants
#define bitsFIRE_NONE 0x00000000
#define bitsFIRE_ACTIVE 0x00000001
class CBaseFire : public CBaseEntity
{
public:
DECLARE_DATADESC();
DECLARE_CLASS( CBaseFire, CBaseEntity );
CBaseFire( void );
virtual ~CBaseFire( void );
virtual void Scale( float size, float time );
virtual void Scale( float start, float size, float time );
virtual void Enable( int state = true );
//Client-side
CNetworkVar( float, m_flStartScale );
CNetworkVar( float, m_flScale );
CNetworkVar( float, m_flScaleTime );
CNetworkVar( int, m_nFlags );
};
//==================================================
// CFireSmoke
//==================================================
//NOTENOTE: Mirrored in cl_dll/c_fire_smoke.cpp
#define bitsFIRESMOKE_SMOKE 0x00000002
#define bitsFIRESMOKE_SMOKE_COLLISION 0x00000004
#define bitsFIRESMOKE_GLOW 0x00000008
#define bitsFIRESMOKE_VISIBLE_FROM_ABOVE 0x00000010
class CFireSmoke : public CBaseFire
{
public:
DECLARE_CLASS( CFireSmoke, CBaseFire );
CFireSmoke( void );
virtual ~CFireSmoke( void );
void Spawn();
void Precache();
void EnableSmoke( int state = true );
void EnableGlow( int state = true );
void EnableVisibleFromAbove( int state = true );
DECLARE_SERVERCLASS();
DECLARE_DATADESC();
public:
//Client-side
CNetworkVar( int, m_nFlameModelIndex );
CNetworkVar( int, m_nFlameFromAboveModelIndex );
//Server-side
};
#endif //FIRE_SMOKE_H