Talk:Env tracer: Difference between revisions
Jump to navigation
Jump to search
(Created page with "What is the actual use of this entity? ~~~~") |
m (Pinsplash moved page Talk:Env Tracer to Talk:Env tracer: rogue capital) |
||
| (2 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
What is the actual use of this entity? [[User:Pinsplash|Pinsplash]] ([[User talk:Pinsplash|talk]]) 15:39, 16 July 2018 (UTC) | What is the actual use of this entity? [[User:Pinsplash|Pinsplash]] ([[User talk:Pinsplash|talk]]) 15:39, 16 July 2018 (UTC) | ||
:No idea, I'll just put the entire code for the entity and you make the conclusion.--[[User:Ficool2|Ficool2]] ([[User talk:Ficool2|talk]]) 15:45, 16 July 2018 (UTC) | |||
<pre> | |||
// ENV_TRACER | |||
// Fakes a tracer | |||
class CEnvTracer : public CPointEntity | |||
{ | |||
public: | |||
DECLARE_CLASS( CEnvTracer, CPointEntity ); | |||
void Spawn( void ); | |||
void TracerThink( void ); | |||
void Activate( void ); | |||
DECLARE_DATADESC(); | |||
Vector m_vecEnd; | |||
float m_flDelay; | |||
}; | |||
LINK_ENTITY_TO_CLASS( env_tracer, CEnvTracer ); | |||
BEGIN_DATADESC( CEnvTracer ) | |||
DEFINE_KEYFIELD( m_flDelay, FIELD_FLOAT, "delay" ), | |||
DEFINE_FIELD( m_vecEnd, FIELD_POSITION_VECTOR ), | |||
// Function Pointers | |||
DEFINE_FUNCTION( TracerThink ), | |||
END_DATADESC() | |||
//----------------------------------------------------------------------------- | |||
// Purpose: Called after keyvalues are parsed. | |||
//----------------------------------------------------------------------------- | |||
void CEnvTracer::Spawn( void ) | |||
{ | |||
SetSolid( SOLID_NONE ); | |||
SetMoveType( MOVETYPE_NONE ); | |||
if (!m_flDelay) | |||
m_flDelay = 1; | |||
} | |||
//----------------------------------------------------------------------------- | |||
// Purpose: Called after all the entities have been loaded. | |||
//----------------------------------------------------------------------------- | |||
void CEnvTracer::Activate( void ) | |||
{ | |||
BaseClass::Activate(); | |||
CBaseEntity *pEnd = gEntList.FindEntityByName( NULL, m_target ); | |||
if (pEnd != NULL) | |||
{ | |||
m_vecEnd = pEnd->GetLocalOrigin(); | |||
SetThink( &CEnvTracer::TracerThink ); | |||
SetNextThink( gpGlobals->curtime + m_flDelay ); | |||
} | |||
else | |||
{ | |||
Msg( "env_tracer: unknown entity \"%s\"\n", STRING(m_target) ); | |||
} | |||
} | |||
// Think | |||
void CEnvTracer::TracerThink( void ) | |||
{ | |||
UTIL_Tracer( GetAbsOrigin(), m_vecEnd ); | |||
SetNextThink( gpGlobals->curtime + m_flDelay ); | |||
} | |||
</pre> | |||
::I'm gonna say none. That's just doing a raytrace infinitely for no reason. Maybe it was some tester thing. [[User:Pinsplash|Pinsplash]] ''([[User talk:Pinsplash|talk]])'' 15:11, 30 September 2018 (UTC) | |||
Latest revision as of 00:18, 3 October 2018
What is the actual use of this entity? Pinsplash (talk) 15:39, 16 July 2018 (UTC)
- No idea, I'll just put the entire code for the entity and you make the conclusion.--Ficool2 (talk) 15:45, 16 July 2018 (UTC)
// ENV_TRACER
// Fakes a tracer
class CEnvTracer : public CPointEntity
{
public:
DECLARE_CLASS( CEnvTracer, CPointEntity );
void Spawn( void );
void TracerThink( void );
void Activate( void );
DECLARE_DATADESC();
Vector m_vecEnd;
float m_flDelay;
};
LINK_ENTITY_TO_CLASS( env_tracer, CEnvTracer );
BEGIN_DATADESC( CEnvTracer )
DEFINE_KEYFIELD( m_flDelay, FIELD_FLOAT, "delay" ),
DEFINE_FIELD( m_vecEnd, FIELD_POSITION_VECTOR ),
// Function Pointers
DEFINE_FUNCTION( TracerThink ),
END_DATADESC()
//-----------------------------------------------------------------------------
// Purpose: Called after keyvalues are parsed.
//-----------------------------------------------------------------------------
void CEnvTracer::Spawn( void )
{
SetSolid( SOLID_NONE );
SetMoveType( MOVETYPE_NONE );
if (!m_flDelay)
m_flDelay = 1;
}
//-----------------------------------------------------------------------------
// Purpose: Called after all the entities have been loaded.
//-----------------------------------------------------------------------------
void CEnvTracer::Activate( void )
{
BaseClass::Activate();
CBaseEntity *pEnd = gEntList.FindEntityByName( NULL, m_target );
if (pEnd != NULL)
{
m_vecEnd = pEnd->GetLocalOrigin();
SetThink( &CEnvTracer::TracerThink );
SetNextThink( gpGlobals->curtime + m_flDelay );
}
else
{
Msg( "env_tracer: unknown entity \"%s\"\n", STRING(m_target) );
}
}
// Think
void CEnvTracer::TracerThink( void )
{
UTIL_Tracer( GetAbsOrigin(), m_vecEnd );
SetNextThink( gpGlobals->curtime + m_flDelay );
}