mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2025-09-19 20:16:10 +08:00
Added original SDK code for Alien Swarm.
This commit is contained in:
83
game/server/testtraceline.cpp
Normal file
83
game/server/testtraceline.cpp
Normal file
@ -0,0 +1,83 @@
|
||||
//========= Copyright <20> 1996-2005, Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose:
|
||||
//
|
||||
// $NoKeywords: $
|
||||
//
|
||||
//=============================================================================//
|
||||
#include "cbase.h"
|
||||
|
||||
// memdbgon must be the last include file in a .cpp file!!!
|
||||
#include "tier0/memdbgon.h"
|
||||
|
||||
// -------------------------------------------------------------------------------- //
|
||||
// An entity used to test traceline
|
||||
// -------------------------------------------------------------------------------- //
|
||||
|
||||
class CTestTraceline : public CPointEntity
|
||||
{
|
||||
public:
|
||||
DECLARE_CLASS( CTestTraceline, CPointEntity );
|
||||
|
||||
void Spawn( void );
|
||||
int UpdateTransmitState();
|
||||
|
||||
DECLARE_SERVERCLASS();
|
||||
DECLARE_DATADESC();
|
||||
|
||||
private:
|
||||
void Spin( void );
|
||||
};
|
||||
|
||||
|
||||
// This table encodes the CBaseEntity data.
|
||||
IMPLEMENT_SERVERCLASS_ST_NOBASE(CTestTraceline, DT_TestTraceline)
|
||||
SendPropInt (SENDINFO(m_clrRender), 32, SPROP_UNSIGNED, SendProxy_Color32ToInt32 ),
|
||||
SendPropVector (SENDINFO(m_vecOrigin), 19, 0, MIN_COORD_INTEGER, MAX_COORD_INTEGER),
|
||||
SendPropFloat (SENDINFO_VECTORELEM(m_angRotation, 0), 19, 0, MIN_COORD_INTEGER, MAX_COORD_INTEGER),
|
||||
SendPropFloat (SENDINFO_VECTORELEM(m_angRotation, 1), 19, 0, MIN_COORD_INTEGER, MAX_COORD_INTEGER),
|
||||
SendPropFloat (SENDINFO_VECTORELEM(m_angRotation, 2), 19, 0, MIN_COORD_INTEGER, MAX_COORD_INTEGER),
|
||||
SendPropEHandle (SENDINFO_NAME(m_hMoveParent, moveparent)),
|
||||
END_SEND_TABLE()
|
||||
|
||||
LINK_ENTITY_TO_CLASS( test_traceline, CTestTraceline );
|
||||
|
||||
BEGIN_DATADESC( CTestTraceline )
|
||||
|
||||
// Function Pointers
|
||||
DEFINE_FUNCTION( Spin ),
|
||||
|
||||
END_DATADESC()
|
||||
|
||||
|
||||
void CTestTraceline::Spawn( void )
|
||||
{
|
||||
SetRenderColor( 255, 255, 255 );
|
||||
SetRenderAlpha( 255 );
|
||||
SetNextThink( gpGlobals->curtime );
|
||||
|
||||
SetThink( &CTestTraceline::Spin );
|
||||
}
|
||||
|
||||
void CTestTraceline::Spin( void )
|
||||
{
|
||||
static ConVar traceline_spin( "traceline_spin","1" );
|
||||
|
||||
if (traceline_spin.GetInt())
|
||||
{
|
||||
float s = sin( gpGlobals->curtime );
|
||||
QAngle angles = GetLocalAngles();
|
||||
|
||||
angles[0] = 180.0 * 0.5 * (s * s * s + 1.0f) + 90;
|
||||
angles[1] = gpGlobals->curtime * 10;
|
||||
|
||||
SetLocalAngles( angles );
|
||||
|
||||
}
|
||||
SetNextThink( gpGlobals->curtime );
|
||||
}
|
||||
|
||||
int CTestTraceline::UpdateTransmitState()
|
||||
{
|
||||
return SetTransmitState( FL_EDICT_ALWAYS );
|
||||
}
|
Reference in New Issue
Block a user