summaryrefslogtreecommitdiff
path: root/game/server/tf2/ragdoll_shadow.h
blob: 93a027c5a88c66ab8b853e2b879b461bb29f1d9d (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
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose: 
//
// $NoKeywords: $
//=============================================================================//

#ifndef RAGDOLL_SHADOW_H
#define RAGDOLL_SHADOW_H
#ifdef _WIN32
#pragma once
#endif

#include "props.h"

class CBaseTFPlayer;
class IPhysicsObject;

//-----------------------------------------------------------------------------
// Purpose: A shadow object used to bound the position of a player ragdoll
//-----------------------------------------------------------------------------
class CRagdollShadow : public CBaseProp
{
	DECLARE_CLASS( CRagdollShadow, CBaseProp );
public:
	DECLARE_SERVERCLASS();

	CRagdollShadow( void ) ;

	virtual void Spawn( void );
	virtual void Precache( void );

	virtual int  UpdateTransmitState() { return SetTransmitState( FL_EDICT_FULLCHECK); }
	virtual int  ShouldTransmit( const CCheckTransmitInfo *pInfo );

	static CRagdollShadow *Create( CBaseTFPlayer *player, const Vector& force );

public:
	CBaseTFPlayer *m_pPlayer;
	CNetworkVar( int, m_nPlayer );
};

#endif // RAGDOLL_SHADOW_H