CPointEntity: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Created page with "CPointEntity is a code class in Source 1, it has under it info_player_start and others related to spawning players.")
 
No edit summary
 
(15 intermediate revisions by 3 users not shown)
Line 1: Line 1:
CPointEntity is a code class in Source 1, it has under it info_player_start and others related to spawning players.
{{CD|CPointEntity|file1=1}}
CPointEntity is a code class in {{Source|4}}. [[:Category:CPointEntity|Entities inheriting this class]] are never rendered as 3D models.
{{Confusion|Not the same thing as [[point entity]] which is determined by how entity is defined in [[FGD]], and also the logic behind the name choice differs}}
 
{{Linked entities
| 1 = info_player_start
| 2 = info_landmark
| 3 = info_teleport_destination
| 4 = info_target_helicopter_crash
| 5 = info_hang_lighting
| 6 = logic_proximity
| 7 = info_player_rebel
| 8 = info_player_combine
}}
 
== Keyvalues ==
=== KeyValue method ===
{{KV|mins / maxs|intn=0||Prints warning to console about not being allowed to modify mins/maxs of point entity.
:{{tip|Can be avoided by specifying # symbol. Example "mins#25 100 100 100". See keyvalue handling of [[CBaseEntity]] for more information about this.}}
}}
{{KV|<anything else>|intn=0|any|Handled by [[CBaseEntity#KeyValue method]].}}
 
{{Class def section}}
 
== See Also ==
* [[CServerOnlyPointEntity]]
* [[CLogicalEntity]]

Latest revision as of 18:11, 10 May 2025

C++ Class hierarchy
CPointEntity
CBaseEntity
C++ subs.cpp

CPointEntity is a code class in Source Source. Entities inheriting this class are never rendered as 3D models.

Warning.pngRisk of Confusion:Not the same thing as point entity which is determined by how entity is defined in FGD, and also the logic behind the name choice differs

Entities linked to this class

Keyvalues

KeyValue method

mins / maxs
Prints warning to console about not being allowed to modify mins/maxs of point entity.
Tip.pngTip:Can be avoided by specifying # symbol. Example "mins#25 100 100 100". See keyvalue handling of CBaseEntity for more information about this.
<anything else> <any>
Handled by CBaseEntity#KeyValue method.

C++ definitions from Source 2013 Multiplayer Source 2013 Multiplayer [edit]

baseentity.h

class CPointEntity : public CBaseEntity
{
public:
	DECLARE_CLASS( CPointEntity, CBaseEntity );

	void	Spawn( void );
	virtual int	ObjectCaps( void ) { return BaseClass::ObjectCaps() & ~FCAP_ACROSS_TRANSITION; }
	virtual bool KeyValue( const char *szKeyName, const char *szValue );
private:
};

baseentity.cpp

bool CPointEntity::KeyValue( const char *szKeyName, const char *szValue ) 
{
	if ( FStrEq( szKeyName, "mins" ) || FStrEq( szKeyName, "maxs" ) )
	{
		Warning("Warning! Can't specify mins/maxs for point entities! (%s)\n", GetClassname() );
		return true;
	}

	return BaseClass::KeyValue( szKeyName, szValue );
}

subs.cpp

void CPointEntity::Spawn( void )
{
	SetSolid( SOLID_NONE );
//	UTIL_SetSize(this, vec3_origin, vec3_origin);
}

See Also