mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2025-09-21 04:56:01 +08:00
Update from SDK 2013
This commit is contained in:

committed by
Nicholas Hastings

parent
6d5c024820
commit
94b660e16e
@ -1,115 +1,119 @@
|
||||
//========= 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"
|
||||
|
||||
class CFunc_LOD : public CBaseEntity
|
||||
{
|
||||
DECLARE_DATADESC();
|
||||
DECLARE_CLASS( CFunc_LOD, CBaseEntity );
|
||||
public:
|
||||
DECLARE_SERVERCLASS();
|
||||
|
||||
CFunc_LOD();
|
||||
virtual ~CFunc_LOD();
|
||||
|
||||
|
||||
// When the viewer is between:
|
||||
// (0 and m_fNonintrusiveDist): the bmodel is forced to be visible
|
||||
// (m_fNonintrusiveDist and m_fDisappearDist): the bmodel is trying to appear or disappear nonintrusively
|
||||
// (waits until it's out of the view frustrum or until there's a lot of motion)
|
||||
// (m_fDisappearDist+): the bmodel is forced to be invisible
|
||||
CNetworkVar( float, m_fDisappearDist );
|
||||
|
||||
// CBaseEntity overrides.
|
||||
public:
|
||||
|
||||
virtual void Spawn();
|
||||
bool CreateVPhysics();
|
||||
virtual void Activate();
|
||||
virtual bool KeyValue( const char *szKeyName, const char *szValue );
|
||||
};
|
||||
|
||||
|
||||
IMPLEMENT_SERVERCLASS_ST(CFunc_LOD, DT_Func_LOD)
|
||||
SendPropFloat(SENDINFO(m_fDisappearDist), 0, SPROP_NOSCALE),
|
||||
END_SEND_TABLE()
|
||||
|
||||
|
||||
LINK_ENTITY_TO_CLASS(func_lod, CFunc_LOD);
|
||||
|
||||
|
||||
//---------------------------------------------------------
|
||||
// Save/Restore
|
||||
//---------------------------------------------------------
|
||||
BEGIN_DATADESC( CFunc_LOD )
|
||||
|
||||
DEFINE_FIELD( m_fDisappearDist, FIELD_FLOAT ),
|
||||
|
||||
END_DATADESC()
|
||||
|
||||
|
||||
// ------------------------------------------------------------------------------------- //
|
||||
// CFunc_LOD implementation.
|
||||
// ------------------------------------------------------------------------------------- //
|
||||
CFunc_LOD::CFunc_LOD()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
CFunc_LOD::~CFunc_LOD()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void CFunc_LOD::Spawn()
|
||||
{
|
||||
// Bind to our bmodel.
|
||||
SetModel( STRING( GetModelName() ) );
|
||||
SetSolid( SOLID_BSP );
|
||||
BaseClass::Spawn();
|
||||
|
||||
CreateVPhysics();
|
||||
}
|
||||
|
||||
bool CFunc_LOD::CreateVPhysics()
|
||||
{
|
||||
VPhysicsInitStatic();
|
||||
return true;
|
||||
}
|
||||
|
||||
void CFunc_LOD::Activate()
|
||||
{
|
||||
BaseClass::Activate();
|
||||
}
|
||||
|
||||
|
||||
bool CFunc_LOD::KeyValue( const char *szKeyName, const char *szValue )
|
||||
{
|
||||
if (FStrEq(szKeyName, "DisappearDist"))
|
||||
{
|
||||
m_fDisappearDist = (float)atof(szValue);
|
||||
}
|
||||
else if (FStrEq(szKeyName, "Solid"))
|
||||
{
|
||||
if (atoi(szValue) != 0)
|
||||
{
|
||||
AddSolidFlags( FSOLID_NOT_SOLID );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return BaseClass::KeyValue(szKeyName, szValue);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
//========= Copyright 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"
|
||||
|
||||
class CFunc_LOD : public CBaseEntity
|
||||
{
|
||||
DECLARE_DATADESC();
|
||||
DECLARE_CLASS( CFunc_LOD, CBaseEntity );
|
||||
public:
|
||||
DECLARE_SERVERCLASS();
|
||||
|
||||
CFunc_LOD();
|
||||
virtual ~CFunc_LOD();
|
||||
|
||||
#ifdef TF_DLL
|
||||
virtual bool IsFuncLOD( void ) const OVERRIDE { return true; }
|
||||
#endif // TF_DLL
|
||||
|
||||
|
||||
// When the viewer is between:
|
||||
// (0 and m_fNonintrusiveDist): the bmodel is forced to be visible
|
||||
// (m_fNonintrusiveDist and m_fDisappearDist): the bmodel is trying to appear or disappear nonintrusively
|
||||
// (waits until it's out of the view frustrum or until there's a lot of motion)
|
||||
// (m_fDisappearDist+): the bmodel is forced to be invisible
|
||||
CNetworkVar( float, m_fDisappearDist );
|
||||
|
||||
// CBaseEntity overrides.
|
||||
public:
|
||||
|
||||
virtual void Spawn();
|
||||
bool CreateVPhysics();
|
||||
virtual void Activate();
|
||||
virtual bool KeyValue( const char *szKeyName, const char *szValue );
|
||||
};
|
||||
|
||||
|
||||
IMPLEMENT_SERVERCLASS_ST(CFunc_LOD, DT_Func_LOD)
|
||||
SendPropFloat(SENDINFO(m_fDisappearDist), 0, SPROP_NOSCALE),
|
||||
END_SEND_TABLE()
|
||||
|
||||
|
||||
LINK_ENTITY_TO_CLASS(func_lod, CFunc_LOD);
|
||||
|
||||
|
||||
//---------------------------------------------------------
|
||||
// Save/Restore
|
||||
//---------------------------------------------------------
|
||||
BEGIN_DATADESC( CFunc_LOD )
|
||||
|
||||
DEFINE_FIELD( m_fDisappearDist, FIELD_FLOAT ),
|
||||
|
||||
END_DATADESC()
|
||||
|
||||
|
||||
// ------------------------------------------------------------------------------------- //
|
||||
// CFunc_LOD implementation.
|
||||
// ------------------------------------------------------------------------------------- //
|
||||
CFunc_LOD::CFunc_LOD()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
CFunc_LOD::~CFunc_LOD()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void CFunc_LOD::Spawn()
|
||||
{
|
||||
// Bind to our bmodel.
|
||||
SetModel( STRING( GetModelName() ) );
|
||||
SetSolid( SOLID_BSP );
|
||||
BaseClass::Spawn();
|
||||
|
||||
CreateVPhysics();
|
||||
}
|
||||
|
||||
bool CFunc_LOD::CreateVPhysics()
|
||||
{
|
||||
VPhysicsInitStatic();
|
||||
return true;
|
||||
}
|
||||
|
||||
void CFunc_LOD::Activate()
|
||||
{
|
||||
BaseClass::Activate();
|
||||
}
|
||||
|
||||
|
||||
bool CFunc_LOD::KeyValue( const char *szKeyName, const char *szValue )
|
||||
{
|
||||
if (FStrEq(szKeyName, "DisappearDist"))
|
||||
{
|
||||
m_fDisappearDist = (float)atof(szValue);
|
||||
}
|
||||
else if (FStrEq(szKeyName, "Solid"))
|
||||
{
|
||||
if (atoi(szValue) != 0)
|
||||
{
|
||||
AddSolidFlags( FSOLID_NOT_SOLID );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return BaseClass::KeyValue(szKeyName, szValue);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user