CBasePlayer: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
Bug:On the client, CBasePlayer is 
		
	
TomEdwards (talk | contribs) mNo edit summary  | 
				Ninjaofsauce (talk | contribs)   (Added some details and connection to mapping/entity information.)  | 
				||
| Line 4: | Line 4: | ||
{{bug|On the client, CBasePlayer is <code>#define C_BasePlayer</code> so that shared code works. Unfortunately, Visual Studio's Intellisense system (prior to 2010, which fixes this) is confused by this and will apply the #def even when you are looking at the server: you'll keep getting sent to <code>C_BasePlayer</code> when looking up references, definitions, and so on. This issue doesn't affect the compiler, thankfully!}}  | {{bug|On the client, CBasePlayer is <code>#define C_BasePlayer</code> so that shared code works. Unfortunately, Visual Studio's Intellisense system (prior to 2010, which fixes this) is confused by this and will apply the #def even when you are looking at the server: you'll keep getting sent to <code>C_BasePlayer</code> when looking up references, definitions, and so on. This issue doesn't affect the compiler, thankfully!}}  | ||
== Mapping ==  | |||
Using ''trigger_'' brushes and ''!activator'', ''!player'', or ''!pvsplayer'' keywords, you can access player entities. Some of these functions can be called using input/output systems.   | |||
== Server ==  | == Server ==  | ||
| Line 10: | Line 13: | ||
This list is cursory and may be inaccurate:  | This list is cursory and may be inaccurate:  | ||
(see: [[player]] for properties and functions.)  | |||
*Weapon selection  | *Weapon selection  | ||
| Line 17: | Line 21: | ||
*Current [[PVS]] (for network updates)  | *Current [[PVS]] (for network updates)  | ||
*Flashlight state  | *Flashlight state  | ||
** 'DisableFlashlight': Disables the player's flashlight.  | |||
** 'EnableFlashlight': Enables the player's flashlight.  | |||
*Battery state (sprinting, flashight drain, oxygen supply...)  | *Battery state (sprinting, flashight drain, oxygen supply...)  | ||
*Ladder state  | *Ladder state  | ||
Revision as of 19:59, 5 December 2021
CBasePlayer is the class from which all player classes should inherit. See also Category:CBasePlayer.
#define C_BasePlayer so that shared code works. Unfortunately, Visual Studio's Intellisense system (prior to 2010, which fixes this) is confused by this and will apply the #def even when you are looking at the server: you'll keep getting sent to C_BasePlayer when looking up references, definitions, and so on. This issue doesn't affect the compiler, thankfully!  [todo tested in ?]Mapping
Using trigger_ brushes and !activator, !player, or !pvsplayer keywords, you can access player entities. Some of these functions can be called using input/output systems.
Server
Functions
This list is cursory and may be inaccurate: (see: player for properties and functions.)
- Weapon selection
 - Viewmodel state
 - FOV (including zoom)
 - Eye position & smoothing
 - Current PVS (for network updates)
 - Flashlight state
- 'DisableFlashlight': Disables the player's flashlight.
 - 'EnableFlashlight': Enables the player's flashlight.
 
 - Battery state (sprinting, flashight drain, oxygen supply...)
 - Ladder state
 - Hint system
 - Respawn state
 - Connection state
 - Receiving & managing usercmds (
CPlayerMoveexecutes) - Some prediction setup
 - CreatePlayer (called from <game>_client)
 - Autokick enabled/disabled
 - Player name, chat, team & serverID
 - Spectator system
 - Bot plug-in support
 - Client-to-server console commands
 - MP tonemap Hammer input (new addition, available in SDK but has yet to roll out to Valve's own games)
 - Armour amount
 - Score, kills, deaths
 - Suicide
 - Time-based damage (drowning, fire...)
 - VPhysics shadow
 - Special QPhysics movement code
 - "Player-simulated entities"
 - Auto-aim
 - HEV suit (vox, Geiger counter)
 - HUD updates (inc. damage received)
 - Using/picking up objects
 - Vehicle interaction
 - "Replay mode"
 - Footsteps
 - Gamepad rumble
 - Debug overlays
 - Level fog
 
Related classes
CBaseCombatCharacter(base class)CBotManager(friend class)CPlayerMoveCUserCmdCPlayerInfoCPlayerCmdInfoCPlayerSimInfoCCommandContextCBloodSplat
Client
...