doom3-gpl
Doom 3 GPL source release
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Player.h
Go to the documentation of this file.
1 /*
2 ===========================================================================
3 
4 Doom 3 GPL Source Code
5 Copyright (C) 1999-2011 id Software LLC, a ZeniMax Media company.
6 
7 This file is part of the Doom 3 GPL Source Code (?Doom 3 Source Code?).
8 
9 Doom 3 Source Code is free software: you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation, either version 3 of the License, or
12 (at your option) any later version.
13 
14 Doom 3 Source Code is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18 
19 You should have received a copy of the GNU General Public License
20 along with Doom 3 Source Code. If not, see <http://www.gnu.org/licenses/>.
21 
22 In addition, the Doom 3 Source Code is also subject to certain additional terms. You should have received a copy of these additional terms immediately following the terms and conditions of the GNU General Public License which accompanied the Doom 3 Source Code. If not, please request a copy in writing from id Software at the address below.
23 
24 If you have questions concerning this license or the applicable additional terms, you may contact in writing id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA.
25 
26 ===========================================================================
27 */
28 
29 #ifndef __GAME_PLAYER_H__
30 #define __GAME_PLAYER_H__
31 
32 /*
33 ===============================================================================
34 
35  Player entity.
36 
37 ===============================================================================
38 */
39 
40 extern const idEventDef EV_Player_GetButtons;
41 extern const idEventDef EV_Player_GetMove;
47 extern const idEventDef EV_SpectatorTouch;
48 
49 const float THIRD_PERSON_FOCUS_DISTANCE = 512.0f;
50 const int LAND_DEFLECT_TIME = 150;
51 const int LAND_RETURN_TIME = 300;
52 const int FOCUS_TIME = 300;
53 const int FOCUS_GUI_TIME = 500;
54 
55 #ifdef _D3XP
56 const int MAX_WEAPONS = 32;
57 #else
58 const int MAX_WEAPONS = 16;
59 #endif
60 
61 const int DEAD_HEARTRATE = 0; // fall to as you die
62 const int LOWHEALTH_HEARTRATE_ADJ = 20; //
63 const int DYING_HEARTRATE = 30; // used for volumen calc when dying/dead
64 const int BASE_HEARTRATE = 70; // default
65 const int ZEROSTAMINA_HEARTRATE = 115; // no stamina
66 const int MAX_HEARTRATE = 130; // maximum
67 const int ZERO_VOLUME = -40; // volume at zero
68 const int DMG_VOLUME = 5; // volume when taking damage
69 const int DEATH_VOLUME = 15; // volume at death
70 
71 const int SAVING_THROW_TIME = 5000; // maximum one "saving throw" every five seconds
72 
73 const int ASYNC_PLAYER_INV_AMMO_BITS = idMath::BitsForInteger( 999 ); // 9 bits to cover the range [0, 999]
74 const int ASYNC_PLAYER_INV_CLIP_BITS = -7; // -7 bits to cover the range [-1, 60]
75 
76 struct idItemInfo {
79 };
80 
85 };
86 
90 };
91 
92 // powerups - the "type" in item .def must match
93 enum {
94  BERSERK = 0,
98 #ifdef _D3XP
99  INVULNERABILITY,
100  HELLTIME,
101  ENVIROSUIT,
102  //HASTE,
103  ENVIROTIME,
104 #endif
106 };
107 
108 // powerup modifiers
109 enum {
110  SPEED = 0,
114 };
115 
116 // influence levels
117 enum {
118  INFLUENCE_NONE = 0, // none
119  INFLUENCE_LEVEL1, // no gun or hud
120  INFLUENCE_LEVEL2, // no gun, hud, movement
121  INFLUENCE_LEVEL3, // slow player movement
122 };
123 
124 #ifdef _D3XP
125 typedef struct {
126  int ammo;
127  int rechargeTime;
128  char ammoName[128];
129 } RechargeAmmo_t;
130 
131 typedef struct {
132  char name[64];
133  idList<int> toggleList;
134 } WeaponToggle_t;
135 #endif
136 
137 class idInventory {
138 public:
140  int weapons;
141  int powerups;
142  int armor;
143  int maxarmor;
144  int ammo[ AMMO_NUMTYPES ];
147 
148 #ifdef _D3XP
149  RechargeAmmo_t rechargeAmmo[ AMMO_NUMTYPES ];
150 #endif
151 
152  // mp
154 
159 
160  int pdasViewed[4]; // 128 bit flags for indicating if a pda has been viewed
161 
162  int selPDA;
163  int selEMail;
164  int selVideo;
165  int selAudio;
166  bool pdaOpened;
173 
174  bool ammoPulse;
178 
180 
183 
184  // save games
185  void Save( idSaveGame *savefile ) const; // archives object for save game file
186  void Restore( idRestoreGame *savefile ); // unarchives object from save game file
187 
188  void Clear( void );
189  void GivePowerUp( idPlayer *player, int powerup, int msec );
190  void ClearPowerUps( void );
191  void GetPersistantData( idDict &dict );
192  void RestoreInventory( idPlayer *owner, const idDict &dict );
193  bool Give( idPlayer *owner, const idDict &spawnArgs, const char *statname, const char *value, int *idealWeapon, bool updateHud );
194  void Drop( const idDict &spawnArgs, const char *weapon_classname, int weapon_index );
195  ammo_t AmmoIndexForAmmoClass( const char *ammo_classname ) const;
196  int MaxAmmoForAmmoClass( idPlayer *owner, const char *ammo_classname ) const;
197  int WeaponIndexForAmmoClass( const idDict & spawnArgs, const char *ammo_classname ) const;
198  ammo_t AmmoIndexForWeaponClass( const char *weapon_classname, int *ammoRequired );
199  const char * AmmoPickupNameForIndex( ammo_t ammonum ) const;
200  void AddPickupName( const char *name, const char *icon, idPlayer* owner ); //_D3XP
201 
202  int HasAmmo( ammo_t type, int amount );
203  bool UseAmmo( ammo_t type, int amount );
204  int HasAmmo( const char *weapon_classname, bool includeClip = false, idPlayer* owner = NULL ); // _D3XP
205 
206 #ifdef _D3XP
207  bool HasEmptyClipCannotRefill(const char *weapon_classname, idPlayer* owner);
208 #endif
209 
210  void UpdateArmor( void );
211 
217 
218 #ifdef _D3XP
219  void InitRechargeAmmo(idPlayer *owner);
220  void RechargeAmmo(idPlayer *owner);
221  bool CanGive( idPlayer *owner, const idDict &spawnArgs, const char *statname, const char *value, int *idealWeapon );
222 #endif
223 };
224 
225 typedef struct {
226  int time;
227  idVec3 dir; // scaled larger for running
228 } loggedAccel_t;
229 
230 typedef struct {
231  int areaNum;
233 } aasLocation_t;
234 
235 class idPlayer : public idActor {
236 public:
237  enum {
243 #ifdef _D3XP
244  EVENT_PICKUPNAME,
245 #endif
247  };
248 
250 
251  class idPlayerView playerView; // handles damage kicks and effects
252 
253  bool noclip;
254  bool godmode;
255 
256  bool spawnAnglesSet; // on first usercmd, we must set deltaAngles
258  idAngles viewAngles; // player view angles
259  idAngles cmdAngles; // player cmd angles
260 
263  int oldFlags;
264 
265  int lastHitTime; // last time projectile fired by player hit target
266  int lastSndHitTime; // MP hit sound - != lastHitTime because we throttle
267  int lastSavingThrowTime; // for the "free miss" effect
268 
288 
289  // inventory
291 
293  idUserInterface * hud; // MP: is NULL if not local player
296 
300 #ifdef _D3XP
301  int weapon_bloodstone;
302  int weapon_bloodstone_active1;
303  int weapon_bloodstone_active2;
304  int weapon_bloodstone_active3;
305  bool harvest_lock;
306 #endif
307 
315  int lastArmorPulse; // lastDmgTime if we had armor at time of hit
316  float stamina;
317  float healthPool; // amount of health to give over time
322 
323 
324  bool hiddenWeapon; // if the weapon is hidden ( in noWeapons maps )
326 
327  // mp stuff
328 #ifdef _D3XP
329  static idVec3 colorBarTable[ 8 ];
330 #else
331  static idVec3 colorBarTable[ 5 ];
332 #endif
333 
335  idVec3 colorBar; // used for scoreboard and hud display
344  bool wantSpectate; // from userInfo
345  bool weaponGone; // force stop firing
346  bool useInitialSpawns; // toggled by a map restart to be active for the first game spawn
347  int latchedTeam; // need to track when team gets changed
348  int tourneyRank; // for tourney cycling - the higher, the more likely to play next - server
349  int tourneyLine; // client side - our spot in the wait line. 0 means no info.
350  int spawnedTime; // when client first enters the game
351 
352 #ifdef CTF
353  bool carryingFlag; // is the player carrying the flag?
354 #endif
355 
356  idEntityPtr<idEntity> teleportEntity; // while being teleported, this is set to the entity we'll use for exit
357  int teleportKiller; // entity number of an entity killing us at teleporter exit
358  bool lastManOver; // can't respawn in last man anymore (srv only)
359  bool lastManPlayAgain; // play again when end game delay is cancelled out before expiring (srv only)
360  bool lastManPresent; // true when player was in when game started (spectators can't join a running LMS)
361  bool isLagged; // replicated from server, true if packets haven't been received from client.
362  bool isChatting; // replicated from server, true if the player is chatting.
363 
364  // timers
365  int minRespawnTime; // can respawn when time > this, force after g_forcerespawn
366  int maxRespawnTime; // force respawn after this time
367 
368  // the first person view values are always calculated, even
369  // if a third person view is used
372 
374 
375 #ifdef _D3XP
376  idFuncMountedObject * mountedObject;
377  idEntityPtr<idLight> enviroSuitLight;
378 
379  bool healthRecharge;
380  int lastHealthRechargeTime;
381  int rechargeSpeed;
382 
383  float new_g_damageScale;
384 
385  bool bloomEnabled;
386  float bloomSpeed;
387  float bloomIntensity;
388 #endif
389 
390 public:
392 
393  idPlayer();
394  virtual ~idPlayer();
395 
396  void Spawn( void );
397  void Think( void );
398 
399  // save games
400  void Save( idSaveGame *savefile ) const; // archives object for save game file
401  void Restore( idRestoreGame *savefile ); // unarchives object from save game file
402 
403  virtual void Hide( void );
404  virtual void Show( void );
405 
406  void Init( void );
407  void PrepareForRestart( void );
408  virtual void Restart( void );
409  void LinkScriptVariables( void );
410  void SetupWeaponEntity( void );
411  void SelectInitialSpawnPoint( idVec3 &origin, idAngles &angles );
412  void SpawnFromSpawnSpot( void );
413  void SpawnToPoint( const idVec3 &spawn_origin, const idAngles &spawn_angles );
414  void SetClipModel( void ); // spectator mode uses a different bbox size
415 
416  void SavePersistantInfo( void );
417  void RestorePersistantInfo( void );
418  void SetLevelTrigger( const char *levelName, const char *triggerName );
419 
420  bool UserInfoChanged( bool canModify );
421  idDict * GetUserInfo( void );
422  bool BalanceTDM( void );
423 
424  void CacheWeapons( void );
425 
426  void EnterCinematic( void );
427  void ExitCinematic( void );
428  bool HandleESC( void );
429  bool SkipCinematic( void );
430 
431  void UpdateConditions( void );
432  void SetViewAngles( const idAngles &angles );
433 
434  // delta view angles to allow movers to rotate the view of the player
435  void UpdateDeltaViewAngles( const idAngles &angles );
436 
437  virtual bool Collide( const trace_t &collision, const idVec3 &velocity );
438 
439  virtual void GetAASLocation( idAAS *aas, idVec3 &pos, int &areaNum ) const;
440  virtual void GetAIAimTargets( const idVec3 &lastSightPos, idVec3 &headPos, idVec3 &chestPos );
441  virtual void DamageFeedback( idEntity *victim, idEntity *inflictor, int &damage );
442  void CalcDamagePoints( idEntity *inflictor, idEntity *attacker, const idDict *damageDef,
443  const float damageScale, const int location, int *health, int *armor );
444  virtual void Damage( idEntity *inflictor, idEntity *attacker, const idVec3 &dir, const char *damageDefName, const float damageScale, const int location );
445 
446  // use exitEntityNum to specify a teleport with private camera view and delayed exit
447  virtual void Teleport( const idVec3 &origin, const idAngles &angles, idEntity *destination );
448 
449  void Kill( bool delayRespawn, bool nodamage );
450  virtual void Killed( idEntity *inflictor, idEntity *attacker, int damage, const idVec3 &dir, int location );
451  void StartFxOnBone(const char *fx, const char *bone);
452 
453  renderView_t * GetRenderView( void );
454  void CalculateRenderView( void ); // called every tic by player code
455  void CalculateFirstPersonView( void );
456 
457  void DrawHUD( idUserInterface *hud );
458 
459  void WeaponFireFeedback( const idDict *weaponDef );
460 
461  float DefaultFov( void ) const;
462  float CalcFov( bool honorZoom );
463  void CalculateViewWeaponPos( idVec3 &origin, idMat3 &axis );
464  idVec3 GetEyePosition( void ) const;
465  void GetViewPos( idVec3 &origin, idMat3 &axis ) const;
466  void OffsetThirdPersonView( float angle, float range, float height, bool clip );
467 
468  bool Give( const char *statname, const char *value );
469  bool GiveItem( idItem *item );
470  void GiveItem( const char *name );
471  void GiveHealthPool( float amt );
472 
473  bool GiveInventoryItem( idDict *item );
474  void RemoveInventoryItem( idDict *item );
475  bool GiveInventoryItem( const char *name );
476  void RemoveInventoryItem( const char *name );
477  idDict * FindInventoryItem( const char *name );
478 
479  void GivePDA( const char *pdaName, idDict *item );
480  void GiveVideo( const char *videoName, idDict *item );
481  void GiveEmail( const char *emailName );
482  void GiveSecurity( const char *security );
483  void GiveObjective( const char *title, const char *text, const char *screenshot );
484  void CompleteObjective( const char *title );
485 
486  bool GivePowerUp( int powerup, int time );
487  void ClearPowerUps( void );
488  bool PowerUpActive( int powerup ) const;
489  float PowerUpModifier( int type );
490 
491  int SlotForWeapon( const char *weaponName );
492  void Reload( void );
493  void NextWeapon( void );
494  void NextBestWeapon( void );
495  void PrevWeapon( void );
496  void SelectWeapon( int num, bool force );
497  void DropWeapon( bool died ) ;
498  void StealWeapon( idPlayer *player );
499  void AddProjectilesFired( int count );
500  void AddProjectileHits( int count );
501  void SetLastHitTime( int time );
502  void LowerWeapon( void );
503  void RaiseWeapon( void );
504  void WeaponLoweringCallback( void );
505  void WeaponRisingCallback( void );
506  void RemoveWeapon( const char *weap );
507  bool CanShowWeaponViewmodel( void ) const;
508 
509  void AddAIKill( void );
510  void SetSoulCubeProjectile( idProjectile *projectile );
511 
512  void AdjustHeartRate( int target, float timeInSecs, float delay, bool force );
513  void SetCurrentHeartRate( void );
514  int GetBaseHeartRate( void );
515  void UpdateAir( void );
516 
517 #ifdef _D3XP
518  void UpdatePowerupHud();
519 #endif
520 
521  virtual bool HandleSingleGuiCommand( idEntity *entityGui, idLexer *src );
522  bool GuiActive( void ) { return focusGUIent != NULL; }
523 
524  void PerformImpulse( int impulse );
525  void Spectate( bool spectate );
526  void TogglePDA( void );
527  void ToggleScoreboard( void );
528  void RouteGuiMouse( idUserInterface *gui );
529  void UpdateHud( void );
530  const idDeclPDA * GetPDA( void ) const;
531  const idDeclVideo * GetVideo( int index );
532  void SetInfluenceFov( float fov );
533  void SetInfluenceView( const char *mtr, const char *skinname, float radius, idEntity *ent );
534  void SetInfluenceLevel( int level );
535  int GetInfluenceLevel( void ) { return influenceActive; };
536  void SetPrivateCameraView( idCamera *camView );
537  idCamera * GetPrivateCameraView( void ) const { return privateCameraView; }
538  void StartFxFov( float duration );
539  void UpdateHudWeapon( bool flashWeapon = true );
542  void Event_StopAudioLog( void );
543  void StartAudioLog( void );
544  void StopAudioLog( void );
545  void ShowTip( const char *title, const char *tip, bool autoHide );
546  void HideTip( void );
547  bool IsTipVisible( void ) { return tipUp; };
548  void ShowObjective( const char *obj );
549  void HideObjective( void );
550 
551  virtual void ClientPredictionThink( void );
552  virtual void WriteToSnapshot( idBitMsgDelta &msg ) const;
553  virtual void ReadFromSnapshot( const idBitMsgDelta &msg );
554  void WritePlayerStateToSnapshot( idBitMsgDelta &msg ) const;
555  void ReadPlayerStateFromSnapshot( const idBitMsgDelta &msg );
556 
557  virtual bool ServerReceiveEvent( int event, int time, const idBitMsg &msg );
558 
559  virtual bool GetPhysicsToVisualTransform( idVec3 &origin, idMat3 &axis );
560  virtual bool GetPhysicsToSoundTransform( idVec3 &origin, idMat3 &axis );
561 
562  virtual bool ClientReceiveEvent( int event, int time, const idBitMsg &msg );
563  bool IsReady( void );
564  bool IsRespawning( void );
565  bool IsInTeleport( void );
566 
569  float GetInfluenceRadius( void ) { return influenceRadius; };
570 
571  // server side work for in/out of spectate. takes care of spawning it into the world as well
572  void ServerSpectate( bool spectate );
573  // for very specific usage. != GetPhysics()
574  idPhysics *GetPlayerPhysics( void );
575  void TeleportDeath( int killer );
576  void SetLeader( bool lead );
577  bool IsLeader( void );
578 
579  void UpdateSkinSetup( bool restart );
580 
581  bool OnLadder( void ) const;
582 
583  virtual void UpdatePlayerIcons( void );
584  virtual void DrawPlayerIcons( void );
585  virtual void HidePlayerIcons( void );
586  bool NeedsIcon( void );
587 
588 #ifdef _D3XP
589  void StartHealthRecharge(int speed);
590  void StopHealthRecharge();
591 
592  idStr GetCurrentWeapon();
593 
594  bool CanGive( const char *statname, const char *value );
595 
596  void StopHelltime( bool quick = true );
597  void PlayHelltimeStopSound();
598 #endif
599 
600 #ifdef CTF
601  void DropFlag( void ); // drop CTF item
602  void ReturnFlag();
603  virtual void FreeModelDef( void );
604 #endif
605 
606  bool SelfSmooth( void );
607  void SetSelfSmooth( bool b );
608 
609 private:
613 
614  idPhysics_Player physicsObj; // player physics
615 
616  idList<aasLocation_t> aasLocation; // for AI tracking the player
617 
618  int bobFoot;
619  float bobFrac;
620  float bobfracsin;
621  int bobCycle; // for view bobbing and footstep generation
622  float xyspeed;
624  float stepUpDelta;
626  float legsYaw;
628  float oldViewYaw;
632  int landTime;
633 
640 
641  const idDeclSkin * skin;
644 
645  int numProjectilesFired; // number of projectiles fired
646  int numProjectileHits; // number of hits on mobs
647 
648  bool airless;
649  int airTics; // set to pm_airTics at start, drops in vacuum
651 
652  bool gibDeath;
655 
658  bool fxFov;
659 
661  int influenceActive; // level of influence.. 1 == no gun or hud .. 2 == 1 + no movement
666 
668 
669  static const int NUM_LOGGED_VIEW_ANGLES = 64; // for weapon turning angle offsets
670  idAngles loggedViewAngles[NUM_LOGGED_VIEW_ANGLES]; // [gameLocal.framenum&(LOGGED_VIEW_ANGLES-1)]
671  static const int NUM_LOGGED_ACCELS = 16; // for weapon turning angle offsets
672  loggedAccel_t loggedAccel[NUM_LOGGED_ACCELS]; // [currentLoggedAccel & (NUM_LOGGED_ACCELS-1)]
674 
675  // if there is a focusGUIent, the attack button will be changed into mouse clicks
677  idUserInterface * focusUI; // focusGUIent->renderEntity.gui, gui2, or gui3
679  int talkCursor; // show the state of the focusCharacter (0 == can't talk/dead, 1 == ready to talk, 2 == busy talking)
683 
684  // full screen guis track mouse movements directly
687 
691 
692  bool tipUp;
694 
702 
703 #ifdef _D3XP
704  idHashTable<WeaponToggle_t> weaponToggles;
705 
706  int hudPowerup;
707  int lastHudPowerup;
708  int hudPowerupDuration;
709 #endif
710 
711  // mp
712  bool ready; // from userInfo
713  bool respawning; // set to true while in SpawnToPoint for telefrag checks
714  bool leader; // for sudden death situations
717  unsigned int lastSnapshotSequence; // track state hitches on clients
718  bool weaponCatchup; // raise up the weapon silently ( state catchups )
719  int MPAim; // player num in aim
721  int lastMPAimTime; // last time the aim changed
722  int MPAimFadeTime; // for GUI fade
724  bool isTelefragged; // proper obituaries
725 
727 
729 
730  void LookAtKiller( idEntity *inflictor, idEntity *attacker );
731 
732  void StopFiring( void );
733  void FireWeapon( void );
734  void Weapon_Combat( void );
735  void Weapon_NPC( void );
736  void Weapon_GUI( void );
737  void UpdateWeapon( void );
738  void UpdateSpectating( void );
739  void SpectateFreeFly( bool force ); // ignore the timeout to force when followed spec is no longer valid
740  void SpectateCycle( void );
741  idAngles GunTurningOffset( void );
743 
744  void UseObjects( void );
745  void CrashLand( const idVec3 &oldOrigin, const idVec3 &oldVelocity );
746  void BobCycle( const idVec3 &pushVelocity );
747  void UpdateViewAngles( void );
748  void EvaluateControls( void );
749  void AdjustSpeed( void );
750  void AdjustBodyAngles( void );
751  void InitAASLocation( void );
752  void SetAASLocation( void );
753  void Move( void );
754  void UpdatePowerUps( void );
755  void UpdateDeathSkin( bool state_hitch );
756  void ClearPowerup( int i );
757  void SetSpectateOrigin( void );
758 
759  void ClearFocus( void );
760  void UpdateFocus( void );
761  void UpdateLocation( void );
762  idUserInterface * ActiveGui( void );
763  void UpdatePDAInfo( bool updatePDASel );
764  int AddGuiPDAData( const declType_t dataType, const char *listName, const idDeclPDA *src, idUserInterface *gui );
765  void ExtractEmailInfo( const idStr &email, const char *scan, idStr &out );
766  void UpdateObjectiveInfo( void );
767 
768 #ifdef _D3XP
769  bool WeaponAvailable( const char* name );
770 #endif
771 
772  void UseVehicle( void );
773 
774  void Event_GetButtons( void );
775  void Event_GetMove( void );
776  void Event_GetViewAngles( void );
777  void Event_StopFxFov( void );
778  void Event_EnableWeapon( void );
779  void Event_DisableWeapon( void );
780  void Event_GetCurrentWeapon( void );
781  void Event_GetPreviousWeapon( void );
782  void Event_SelectWeapon( const char *weaponName );
783  void Event_GetWeaponEntity( void );
784  void Event_OpenPDA( void );
785  void Event_PDAAvailable( void );
786  void Event_InPDA( void );
787  void Event_ExitTeleporter( void );
788  void Event_HideTip( void );
789  void Event_LevelTrigger( void );
790  void Event_Gibbed( void );
791 
792 #ifdef _D3XP //BSM: Event to remove inventory items. Useful with powercells.
793  void Event_GiveInventoryItem( const char* name );
794  void Event_RemoveInventoryItem( const char* name );
795 
796  void Event_GetIdealWeapon( void );
797  void Event_WeaponAvailable( const char* name );
798  void Event_SetPowerupTime( int powerup, int time );
799  void Event_IsPowerupActive( int powerup );
800  void Event_StartWarp();
801  void Event_StopHelltime( int mode );
802  void Event_ToggleBloom( int on );
803  void Event_SetBloomParms( float speed, float intensity );
804 #endif
805 };
806 
807 ID_INLINE bool idPlayer::IsReady( void ) {
808  return ready || forcedReady;
809 }
810 
811 ID_INLINE bool idPlayer::IsRespawning( void ) {
812  return respawning;
813 }
814 
816  return &physicsObj;
817 }
818 
819 ID_INLINE bool idPlayer::IsInTeleport( void ) {
820  return ( teleportEntity.GetEntity() != NULL );
821 }
822 
823 ID_INLINE void idPlayer::SetLeader( bool lead ) {
824  leader = lead;
825 }
826 
827 ID_INLINE bool idPlayer::IsLeader( void ) {
828  return leader;
829 }
830 
831 ID_INLINE bool idPlayer::SelfSmooth( void ) {
832  return selfSmooth;
833 }
834 
835 ID_INLINE void idPlayer::SetSelfSmooth( bool b ) {
836  selfSmooth = b;
837 }
838 
839 #endif /* !__GAME_PLAYER_H__ */
840 
void Spectate(bool spectate)
bool GuiActive(void)
Definition: Player.h:522
jointHandle_t
Definition: Model.h:156
const int MAX_WEAPONS
Definition: Player.h:58
idScriptBool AI_TURN_LEFT
Definition: Player.h:286
idPhysics_Player physicsObj
Definition: Player.h:614
void TeleportDeath(int killer)
int focusTime
Definition: Player.h:680
void Event_Gibbed(void)
idStrList pdaSecurity
Definition: Player.h:170
void AddAIKill(void)
int weapons
Definition: Player.h:140
bool noclip
Definition: Player.h:253
void HideTip(void)
const idEventDef EV_SpectatorTouch
idInterpolate< float > centerView
Definition: Player.h:657
int teleportKiller
Definition: Player.h:357
static const int NUM_LOGGED_ACCELS
Definition: Player.h:671
GLsizei const GLfloat * value
Definition: glext.h:3614
const int LOWHEALTH_HEARTRATE_ADJ
Definition: Player.h:62
virtual void UpdatePlayerIcons(void)
int numProjectilesFired
Definition: Player.h:645
virtual void Hide(void)
idStr baseSkinName
Definition: Player.h:643
void WeaponFireFeedback(const idDict *weaponDef)
void Clear(void)
Definition: Player.cpp:155
bool SkipCinematic(void)
bool weaponEnabled
Definition: Player.h:638
idScriptBool AI_ONLADDER
Definition: Player.h:278
void Restore(idRestoreGame *savefile)
void CacheWeapons(void)
bool useInitialSpawns
Definition: Player.h:346
void ClearPowerUps(void)
Definition: Player.cpp:245
int nextHealthTake
Definition: Player.h:321
void Weapon_Combat(void)
void LowerWeapon(void)
void SetInfluenceLevel(int level)
int selAudio
Definition: Player.h:165
void ClearFocus(void)
int lastMPAim
Definition: Player.h:720
void Event_GetMove(void)
bool forceRespawn
Definition: Player.h:339
void SpectateCycle(void)
bool forceScoreBoard
Definition: Player.h:338
const idEventDef EV_Player_DisableWeapon
idVec3 gibsDir
Definition: Player.h:654
void SavePersistantInfo(void)
void Event_OpenPDA(void)
void Spawn(void)
idStr title
Definition: Player.h:82
int lastSpectateChange
Definition: Player.h:715
const int FOCUS_TIME
Definition: Player.h:52
idScriptBool AI_SOFTLANDING
Definition: Player.h:283
void SetLeader(bool lead)
Definition: Player.h:823
loggedAccel_t loggedAccel[NUM_LOGGED_ACCELS]
Definition: Player.h:672
idScriptBool AI_ATTACK_HELD
Definition: Player.h:273
Definition: Player.h:110
type * GetEntity(void) const
Definition: Game_local.h:695
int oldFlags
Definition: Player.h:263
bool NeedsIcon(void)
void ClearPowerup(int i)
void SetAASLocation(void)
float stepUpDelta
Definition: Player.h:624
bool GiveItem(idItem *item)
virtual void ClientPredictionThink(void)
bool IsLeader(void)
Definition: Player.h:827
void StartAudioLog(void)
void TogglePDA(void)
bool lastManPlayAgain
Definition: Player.h:359
GLint location
Definition: glext.h:3631
void Event_GetCurrentWeapon(void)
bool godmode
Definition: Player.h:254
const int LAND_RETURN_TIME
Definition: Player.h:51
const int DEATH_VOLUME
Definition: Player.h:69
void SetSpectateOrigin(void)
void DropWeapon(bool died)
virtual void GetAIAimTargets(const idVec3 &lastSightPos, idVec3 &headPos, idVec3 &chestPos)
int heartRate
Definition: Player.h:308
int GetInfluenceLevel(void)
Definition: Player.h:535
bool pdaOpened
Definition: Player.h:166
idStr screenshot
Definition: Player.h:84
bool doingDeathSkin
Definition: Player.h:314
const int BASE_HEARTRATE
Definition: Player.h:64
idInventory inventory
Definition: Player.h:290
float oldViewYaw
Definition: Player.h:628
int lastSavingThrowTime
Definition: Player.h:267
float bobfracsin
Definition: Player.h:620
idEntity * influenceEntity
Definition: Player.h:662
const idMaterial * GetInfluenceMaterial(void)
Definition: Player.h:568
idVec3 GetEyePosition(void) const
float influenceFov
Definition: Player.h:660
void AdjustBodyAngles(void)
void GetPersistantData(idDict &dict)
Definition: Player.cpp:258
bool ammoPulse
Definition: Player.h:174
bool ready
Definition: Player.h:712
int deathClearContentsTime
Definition: Player.h:313
void UpdateFocus(void)
float PowerUpModifier(int type)
static idVec3 colorBarTable[5]
Definition: Player.h:331
bool BalanceTDM(void)
declType_t
Definition: DeclManager.h:65
jointHandle_t hipJoint
Definition: Player.h:610
idList< float > damageScale
Definition: Actor.h:230
void AddPickupName(const char *name, const char *icon, idPlayer *owner)
Definition: Player.cpp:776
idScriptBool AI_FORWARD
Definition: Player.h:269
void UpdatePDAInfo(bool updatePDASel)
ammo_t AmmoIndexForAmmoClass(const char *ammo_classname) const
Definition: Player.cpp:707
bool leader
Definition: Player.h:714
void RemoveWeapon(const char *weap)
unsigned int lastSnapshotSequence
Definition: Player.h:717
int GetBaseHeartRate(void)
Definition: Vector.h:316
idInterpolate< float > heartInfo
Definition: Player.h:309
float legsYaw
Definition: Player.h:626
int nextItemPickup
Definition: Player.h:212
idScriptBool AI_RUN
Definition: Player.h:280
jointHandle_t headJoint
Definition: Player.h:612
void GivePDA(const char *pdaName, idDict *item)
virtual ~idPlayer()
void SetInfluenceFov(float fov)
void Event_InPDA(void)
int onePickupTime
Definition: Player.h:214
idCamera * GetPrivateCameraView(void) const
Definition: Player.h:537
idList< idLevelTriggerInfo > levelTriggers
Definition: Player.h:179
float idealLegsYaw
Definition: Player.h:625
virtual bool ClientReceiveEvent(int event, int time, const idBitMsg &msg)
GLuint GLuint GLsizei GLenum type
Definition: glext.h:2845
idEntityPtr< idProjectile > soulCubeProjectile
Definition: Player.h:325
~idInventory()
Definition: Player.h:182
void SetInfluenceView(const char *mtr, const char *skinname, float radius, idEntity *ent)
idEntityPtr< idEntity > teleportEntity
Definition: Player.h:356
void Event_SelectWeapon(const char *weaponName)
int deplete_armor
Definition: Player.h:155
bool UserInfoChanged(bool canModify)
void UpdateViewAngles(void)
void PrevWeapon(void)
void BobCycle(const idVec3 &pushVelocity)
GLuint src
Definition: glext.h:5390
int WeaponIndexForAmmoClass(const idDict &spawnArgs, const char *ammo_classname) const
Definition: Player.cpp:735
void OffsetThirdPersonView(float angle, float range, float height, bool clip)
int airTics
Definition: Player.h:649
int nextItemNum
Definition: Player.h:213
virtual void DrawPlayerIcons(void)
GLhandleARB obj
Definition: glext.h:3602
bool gibDeath
Definition: Player.h:652
bool forcedReady
Definition: Player.h:343
const int DEAD_HEARTRATE
Definition: Player.h:61
void UpdateConditions(void)
jointHandle_t chestJoint
Definition: Player.h:611
int numProjectileHits
Definition: Player.h:646
int oldMouseY
Definition: Player.h:686
void UpdateObjectiveInfo(void)
virtual void DamageFeedback(idEntity *victim, idEntity *inflictor, int &damage)
bool fxFov
Definition: Player.h:658
int i
Definition: process.py:33
void RouteGuiMouse(idUserInterface *gui)
void Event_StopAudioLog(void)
void SetLastHitTime(int time)
idList< idObjectiveInfo > objectiveNames
Definition: Player.h:216
idScriptBool AI_TELEPORT
Definition: Player.h:285
const idDeclSkin * powerUpSkin
Definition: Player.h:642
GLuint GLuint num
Definition: glext.h:5390
bool HandleESC(void)
void ToggleScoreboard(void)
idScriptBool AI_TURN_RIGHT
Definition: Player.h:287
idVec3 dir
Definition: Player.h:227
GLsizei range
Definition: glext.h:4368
bool Give(const char *statname, const char *value)
int bobCycle
Definition: Player.h:621
void RemoveInventoryItem(idDict *item)
int lastSndHitTime
Definition: Player.h:266
virtual void Show(void)
const int LAND_DEFLECT_TIME
Definition: Player.h:50
int MPAim
Definition: Player.h:719
idStrList videos
Definition: Player.h:171
void UpdateWeapon(void)
virtual void FreeModelDef(void)
Definition: AFEntity.cpp:866
virtual void HidePlayerIcons(void)
virtual void WriteToSnapshot(idBitMsgDelta &msg) const
void CalculateViewWeaponPos(idVec3 &origin, idMat3 &axis)
bool weaponCatchup
Definition: Player.h:718
int minRespawnTime
Definition: Player.h:365
void Event_GetWeaponEntity(void)
void UpdatePowerUps(void)
idStr pdaVideo
Definition: Player.h:689
void SetCurrentHeartRate(void)
void DrawHUD(idUserInterface *hud)
virtual bool GetPhysicsToSoundTransform(idVec3 &origin, idMat3 &axis)
virtual void Killed(idEntity *inflictor, idEntity *attacker, int damage, const idVec3 &dir, int location)
idStr levelName
Definition: Player.h:88
idAFEntity_Vehicle * focusVehicle
Definition: Player.h:681
const idEventDef EV_Player_EnableWeapon
int lastDmgTime
Definition: Player.h:312
void StartFxOnBone(const char *fx, const char *bone)
int MPAimFadeTime
Definition: Player.h:722
int lastHeartBeat
Definition: Player.h:311
const int MAX_HEARTRATE
Definition: Player.h:66
class idPlayerView playerView
Definition: Player.h:251
idUserInterface * focusUI
Definition: Player.h:677
bool hiddenWeapon
Definition: Player.h:324
Definition: Lexer.h:137
void Reload(void)
virtual void ReadFromSnapshot(const idBitMsgDelta &msg)
bool GivePowerUp(int powerup, int time)
void GiveHealthPool(float amt)
void CalcDamagePoints(idEntity *inflictor, idEntity *attacker, const idDict *damageDef, const float damageScale, const int location, int *health, int *armor)
idScriptBool AI_STRAFE_LEFT
Definition: Player.h:271
bool UseAmmo(ammo_t type, int amount)
void Event_HideTip(void)
GLuint GLuint GLsizei count
Definition: glext.h:2845
void NextBestWeapon(void)
bool IsInTeleport(void)
Definition: Player.h:819
float deplete_rate
Definition: Player.h:156
int landChange
Definition: Player.h:631
void RaiseWeapon(void)
float CalcFov(bool honorZoom)
void UpdateHudWeapon(bool flashWeapon=true)
void SetSoulCubeProjectile(idProjectile *projectile)
const float THIRD_PERSON_FOCUS_DISTANCE
Definition: Player.h:49
GLuint index
Definition: glext.h:3476
idAngles viewBobAngles
Definition: Player.h:629
virtual bool HandleSingleGuiCommand(idEntity *entityGui, idLexer *src)
void Restore(idRestoreGame *savefile)
Definition: Player.cpp:576
bool MPAimHighlight
Definition: Player.h:723
idUserInterface * ActiveGui(void)
idStr icon
Definition: Player.h:78
virtual bool Collide(const trace_t &collision, const idVec3 &velocity)
bool OnLadder(void) const
void GiveVideo(const char *videoName, idDict *item)
int lastDamageLocation
Definition: Player.h:697
const int SAVING_THROW_TIME
Definition: Player.h:71
int lastAirDamage
Definition: Player.h:650
virtual void Damage(idEntity *inflictor, idEntity *attacker, const idVec3 &dir, const char *damageDefName, const float damageScale, const int location)
int weaponSwitchTime
Definition: Player.h:637
idVec3 viewBob
Definition: Player.h:630
bool smoothedOriginUpdated
Definition: Player.h:699
int powerupEndTime[MAX_POWERUPS]
Definition: Player.h:146
bool SelfSmooth(void)
Definition: Player.h:831
void StopAudioLog(void)
idStr triggerName
Definition: Player.h:89
void ExtractEmailInfo(const idStr &email, const char *scan, idStr &out)
void Move(void)
int currentWeapon
Definition: Player.h:634
idStr text
Definition: Player.h:83
void UpdateSkinSetup(bool restart)
const char * AmmoPickupNameForIndex(ammo_t ammonum) const
Definition: Player.cpp:725
bool weaponPulse
Definition: Player.h:175
idEntity * GetInfluenceEntity(void)
Definition: Player.h:567
Definition: Dict.h:65
idVec3 firstPersonViewOrigin
Definition: Player.h:370
int bobFoot
Definition: Player.h:618
void CrashLand(const idVec3 &oldOrigin, const idVec3 &oldVelocity)
#define NULL
Definition: Lib.h:88
bool objectiveSystemOpen
Definition: Player.h:295
bool armorPulse
Definition: Player.h:176
int currentLoggedAccel
Definition: Player.h:673
int weapon_pda
Definition: Player.h:298
int weapon_soulcube
Definition: Player.h:297
void CalculateRenderView(void)
idStr pdaAudio
Definition: Player.h:688
bool isTelefragged
Definition: Player.h:724
idEntity * focusGUIent
Definition: Player.h:676
int deplete_ammount
Definition: Player.h:157
idScriptBool AI_RELOAD
Definition: Player.h:284
idAngles cmdAngles
Definition: Player.h:259
renderView_t * GetRenderView(void)
float stamina
Definition: Player.h:316
idUserInterface * cursor
Definition: Player.h:682
idVec3 smoothedOrigin
Definition: Player.h:700
void Think(void)
idScriptBool AI_JUMP
Definition: Player.h:275
void Event_DisableWeapon(void)
int oldButtons
Definition: Player.h:262
int smoothedFrame
Definition: Player.h:698
float influenceRadius
Definition: Player.h:664
const int DMG_VOLUME
Definition: Player.h:68
virtual void Teleport(const idVec3 &origin, const idAngles &angles, idEntity *destination)
int lastTeleFX
Definition: Player.h:716
const idDeclSkin * influenceSkin
Definition: Player.h:665
bool PowerUpActive(int powerup) const
void Weapon_NPC(void)
virtual bool GetPhysicsToVisualTransform(idVec3 &origin, idMat3 &axis)
GLint mode
Definition: glext.h:4165
void UpdateAir(void)
void GiveEmail(const char *emailName)
int nextHealthPulse
Definition: Player.h:318
usercmd_t usercmd
Definition: Player.h:249
void SetupWeaponEntity(void)
idScriptBool AI_CROUCH
Definition: Player.h:276
bool CanShowWeaponViewmodel(void) const
Definition: Item.h:41
const int FOCUS_GUI_TIME
Definition: Player.h:53
void UseObjects(void)
idVec3 GunAcceleratingOffset(void)
int lastMPAimTime
Definition: Player.h:721
void Event_LevelTrigger(void)
bool healthPulse
Definition: Player.h:319
void UpdateHudStats(idUserInterface *hud)
int pdasViewed[4]
Definition: Player.h:160
void RestoreInventory(idPlayer *owner, const idDict &dict)
Definition: Player.cpp:354
void LookAtKiller(idEntity *inflictor, idEntity *attacker)
idUserInterface * hud
Definition: Player.h:293
int clip[MAX_WEAPONS]
Definition: Player.h:145
bool IsRespawning(void)
Definition: Player.h:811
int powerups
Definition: Player.h:141
int ammo_t
Definition: Weapon.h:53
idAI * focusCharacter
Definition: Player.h:678
int maxRespawnTime
Definition: Player.h:366
void SpawnToPoint(const idVec3 &spawn_origin, const idAngles &spawn_angles)
int talkCursor
Definition: Player.h:679
int lastSpectateTeleport
Definition: Player.h:341
const idMaterial * influenceMaterial
Definition: Player.h:663
void Event_GetPreviousWeapon(void)
void SetViewAngles(const idAngles &angles)
int oldMouseX
Definition: Player.h:685
idList< idItemInfo > pickupItemNames
Definition: Player.h:215
void RestorePersistantInfo(void)
void PerformImpulse(int impulse)
idScriptBool AI_BACKWARD
Definition: Player.h:270
idScriptBool AI_WEAPON_FIRED
Definition: Player.h:274
int lastArmorPulse
Definition: Player.h:315
bool showWeaponViewModel
Definition: Player.h:639
void SetSelfSmooth(bool b)
Definition: Player.h:835
idScriptBool AI_STRAFE_RIGHT
Definition: Player.h:272
static int BitsForInteger(int i)
Definition: Math.h:727
void ExitCinematic(void)
bool GiveInventoryItem(idDict *item)
idAngles loggedViewAngles[NUM_LOGGED_VIEW_ANGLES]
Definition: Player.h:670
int lastHitTime
Definition: Player.h:265
int ammo[AMMO_NUMTYPES]
Definition: Player.h:144
int stepUpTime
Definition: Player.h:623
void SetClipModel(void)
GLenum GLsizei GLsizei height
Definition: glext.h:2856
idMat3 firstPersonViewAxis
Definition: Player.h:371
idAngles spawnAngles
Definition: Player.h:257
void LinkScriptVariables(void)
void AdjustSpeed(void)
idStrList pdas
Definition: Player.h:169
int spawnedTime
Definition: Player.h:350
void WritePlayerStateToSnapshot(idBitMsgDelta &msg) const
idDragEntity dragEntity
Definition: Player.h:373
GLubyte GLubyte b
Definition: glext.h:4662
const int ZEROSTAMINA_HEARTRATE
Definition: Player.h:65
bool Give(idPlayer *owner, const idDict &spawnArgs, const char *statname, const char *value, int *idealWeapon, bool updateHud)
void UpdateDeltaViewAngles(const idAngles &angles)
void Event_GetViewAngles(void)
bool isLagged
Definition: Player.h:361
void FireWeapon(void)
int colorBarIndex
Definition: Player.h:336
void UpdateHudAmmo(idUserInterface *hud)
int health
Definition: Entity.h:134
bool respawning
Definition: Player.h:713
const int ZERO_VOLUME
Definition: Player.h:67
idScriptBool AI_DEAD
Definition: Player.h:279
idVec3 pos
Definition: Player.h:232
bool spawnAnglesSet
Definition: Player.h:256
int SlotForWeapon(const char *weaponName)
Definition: Player.h:94
void GiveSecurity(const char *security)
void WeaponLoweringCallback(void)
Definition: Matrix.h:333
void SetLevelTrigger(const char *levelName, const char *triggerName)
float bobFrac
Definition: Player.h:619
bool IsReady(void)
Definition: Player.h:807
bool airless
Definition: Player.h:648
int HasAmmo(ammo_t type, int amount)
int influenceActive
Definition: Player.h:661
void WeaponRisingCallback(void)
float xyspeed
Definition: Player.h:622
void Event_StopFxFov(void)
int tourneyLine
Definition: Player.h:349
idList< idDict * > items
Definition: Player.h:168
const idDeclPDA * GetPDA(void) const
int weapon_fists
Definition: Player.h:299
int maxarmor
Definition: Player.h:143
float GetInfluenceRadius(void)
Definition: Player.h:569
idAngles GunTurningOffset(void)
int AddGuiPDAData(const declType_t dataType, const char *listName, const idDeclPDA *src, idUserInterface *gui)
idAngles viewAngles
Definition: Player.h:258
void Event_ExitTeleporter(void)
Definition: Actor.h:111
void UpdateArmor(void)
void UpdateDeathSkin(bool state_hitch)
void ShowObjective(const char *obj)
void GivePowerUp(idPlayer *player, int powerup, int msec)
Definition: Player.cpp:207
void StartFxFov(float duration)
void StealWeapon(idPlayer *player)
const GLcharARB * name
Definition: glext.h:3629
void NextWeapon(void)
idInventory()
Definition: Player.h:181
bool lastHitToggle
Definition: Player.h:342
idScriptBool AI_PAIN
Definition: Player.h:281
void ReadPlayerStateFromSnapshot(const idBitMsgDelta &msg)
idStr pdaVideoWave
Definition: Player.h:690
idStr name
Definition: Player.h:77
idDict * GetUserInfo(void)
int selPDA
Definition: Player.h:162
bool IsTipVisible(void)
Definition: Player.h:547
bool lastManOver
Definition: Player.h:358
Definition: Str.h:116
void AdjustHeartRate(int target, float timeInSecs, float delay, bool force)
bool healthTake
Definition: Player.h:320
void SpectateFreeFly(bool force)
idList< aasLocation_t > aasLocation
Definition: Player.h:616
idInterpolate< float > zoomFov
Definition: Player.h:656
const idEventDef EV_Player_GetViewAngles
idDict * FindInventoryItem(const char *name)
void AddProjectileHits(int count)
float DefaultFov(void) const
idVec3 lastDamageDir
Definition: Player.h:696
int selEMail
Definition: Player.h:163
virtual void Restart(void)
void Event_GetButtons(void)
void ClearPowerUps(void)
const idDeclVideo * GetVideo(int index)
bool tipUp
Definition: Player.h:692
void ServerSpectate(bool spectate)
void Weapon_GUI(void)
void StopFiring(void)
int previousWeapon
Definition: Player.h:636
idScriptBool AI_HARDLANDING
Definition: Player.h:282
bool selfSmooth
Definition: Player.h:728
bool wantSpectate
Definition: Player.h:344
const int ASYNC_PLAYER_INV_CLIP_BITS
Definition: Player.h:74
void HideObjective(void)
idScriptBool AI_ONGROUND
Definition: Player.h:277
float healthPool
Definition: Player.h:317
int idealWeapon
Definition: Player.h:635
idVec3 colorBar
Definition: Player.h:335
const idDeclSkin * skin
Definition: Player.h:641
void Save(idSaveGame *savefile) const
Definition: Player.cpp:472
int MaxAmmoForAmmoClass(idPlayer *owner, const char *ammo_classname) const
Definition: Player.cpp:716
int lastGiveTime
Definition: Player.h:177
void SetPrivateCameraView(idCamera *camView)
GLint level
Definition: glext.h:2878
void Drop(const idDict &spawnArgs, const char *weapon_classname, int weapon_index)
int areaNum
Definition: Player.h:231
const int ASYNC_PLAYER_INV_AMMO_BITS
Definition: Player.h:73
const idEventDef EV_Player_GetButtons
void GetViewPos(idVec3 &origin, idMat3 &axis) const
int ammoPredictTime
Definition: Player.h:153
virtual void GetAASLocation(idAAS *aas, idVec3 &pos, int &areaNum) const
int latchedTeam
Definition: Player.h:347
int lastHeartAdjust
Definition: Player.h:310
idAngles smoothedAngles
Definition: Player.h:701
const idEventDef EV_Player_GetMove
int buttonMask
Definition: Player.h:261
void UpdateSpectating(void)
void SelectWeapon(int num, bool force)
int lastDamageDef
Definition: Player.h:695
idStrList emails
Definition: Player.h:172
int selVideo
Definition: Player.h:164
bool legsForward
Definition: Player.h:627
idUserInterface * objectiveSystem
Definition: Player.h:294
void Event_PDAAvailable(void)
idPlayerIcon playerIcon
Definition: Player.h:726
void CompleteObjective(const char *title)
void ShowTip(const char *title, const char *tip, bool autoHide)
idPlayer * player
Definition: PlayerView.h:417
int tourneyRank
Definition: Player.h:348
void Event_EnableWeapon(void)
void Init(void)
void CalculateFirstPersonView(void)
void Kill(bool delayRespawn, bool nodamage)
int nextArmorDepleteTime
Definition: Player.h:158
void SpawnFromSpawnSpot(void)
int landTime
Definition: Player.h:632
bool scoreBoardOpen
Definition: Player.h:337
void InitAASLocation(void)
const idEventDef EV_Player_ExitTeleporter
int spectator
Definition: Player.h:334
const int DYING_HEARTRATE
Definition: Player.h:63
bool gibsLaunched
Definition: Player.h:653
void GiveObjective(const char *title, const char *text, const char *screenshot)
bool spectating
Definition: Player.h:340
void EnterCinematic(void)
idCamera * privateCameraView
Definition: Player.h:667
idEntityPtr< idWeapon > weapon
Definition: Player.h:292
CLASS_PROTOTYPE(idPlayer)
void PrepareForRestart(void)
bool lastManPresent
Definition: Player.h:360
void Save(idSaveGame *savefile) const
void UpdateHud(void)
const idEventDef EV_Player_SelectWeapon
Definition: AI.h:253
int maxHealth
Definition: Player.h:139
idPhysics * GetPlayerPhysics(void)
Definition: Player.h:815
void EvaluateControls(void)
bool turkeyScore
Definition: Player.h:167
void UpdateLocation(void)
Definition: AAS.h:75
bool isChatting
Definition: Player.h:362
bool objectiveUp
Definition: Player.h:693
int armor
Definition: Player.h:142
void SelectInitialSpawnPoint(idVec3 &origin, idAngles &angles)
ammo_t AmmoIndexForWeaponClass(const char *weapon_classname, int *ammoRequired)
Definition: Player.cpp:759
bool weaponGone
Definition: Player.h:345
virtual bool ServerReceiveEvent(int event, int time, const idBitMsg &msg)
void UseVehicle(void)
static const int NUM_LOGGED_VIEW_ANGLES
Definition: Player.h:669
void AddProjectilesFired(int count)