DDraceNetwork Docs
gameclient.h
Go to the documentation of this file.
1/* (c) Magnus Auvinen. See licence.txt in the root of the distribution for more information. */
2/* If you are missing that file, acquire a complete release at teeworlds.com. */
3#ifndef GAME_CLIENT_GAMECLIENT_H
4#define GAME_CLIENT_GAMECLIENT_H
5
6#include "render.h"
7#include <base/color.h>
8#include <base/vmath.h>
9#include <engine/client.h>
10#include <engine/client/enums.h>
11#include <engine/console.h>
13
14#include <game/collision.h>
15#include <game/gamecore.h>
16#include <game/layers.h>
17#include <game/mapbugs.h>
18#include <game/teamscore.h>
19
21#include <game/client/race.h>
22
25
26// components
28#include "components/binds.h"
30#include "components/camera.h"
31#include "components/chat.h"
32#include "components/console.h"
33#include "components/controls.h"
36#include "components/debughud.h"
37#include "components/effects.h"
38#include "components/emoticon.h"
39#include "components/flow.h"
41#include "components/ghost.h"
42#include "components/hud.h"
44#include "components/items.h"
49#include "components/menus.h"
50#include "components/motd.h"
53#include "components/players.h"
56#include "components/skins.h"
57#include "components/skins7.h"
58#include "components/sounds.h"
61#include "components/tooltips.h"
63#include "components/voting.h"
64
66{
67public:
74
78
83
88
96
97 bool m_Race;
98 bool m_Pvp;
99
102
106
109
111};
112
114{
115public:
118};
119
121{
122 NO_INDENT,
124 INDENT_FORCE, // for rendering settings preview
125};
126
128{
129public:
130 // all components
156
162
167
169
172
174
175private:
176 std::vector<class CComponent *> m_vpAll;
177 std::vector<class CComponent *> m_vpInput;
180
197#if defined(CONF_AUTOUPDATE)
198 class IUpdater *m_pUpdater;
199#endif
201
206
207 void ProcessEvents();
208 void UpdatePositions();
209
212
215
218
221
223
225
226 static void ConTeam(IConsole::IResult *pResult, void *pUserData);
227 static void ConKill(IConsole::IResult *pResult, void *pUserData);
228 static void ConReadyChange7(IConsole::IResult *pResult, void *pUserData);
229
230 static void ConchainLanguageUpdate(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData);
231 static void ConchainSpecialInfoupdate(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData);
232 static void ConchainSpecialDummyInfoupdate(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData);
233 static void ConchainRefreshSkins(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData);
234 static void ConchainSpecialDummy(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData);
235
236 static void ConTuneZone(IConsole::IResult *pResult, void *pUserData);
237 static void ConMapbug(IConsole::IResult *pResult, void *pUserData);
238
239 static void ConchainMenuMap(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData);
240
241 // only used in OnPredict
244
245 // only used in OnNewSnapshot
246 bool m_GameOver = false;
247 bool m_GamePaused = false;
249
250public:
252 IEngine *Engine() const { return m_pEngine; }
253 class IGraphics *Graphics() const { return m_pGraphics; }
254 class IClient *Client() const { return m_pClient; }
255 class CUi *Ui() { return &m_UI; }
256 class ISound *Sound() const { return m_pSound; }
257 class IInput *Input() const { return m_pInput; }
258 class IStorage *Storage() const { return m_pStorage; }
260 class CConfig *Config() const { return m_pConfig; }
261 class IConsole *Console() { return m_pConsole; }
262 class ITextRender *TextRender() const { return m_pTextRender; }
263 class IDemoPlayer *DemoPlayer() const { return m_pDemoPlayer; }
264 class IDemoRecorder *DemoRecorder(int Recorder) const { return Client()->DemoRecorder(Recorder); }
265 class IFavorites *Favorites() const { return m_pFavorites; }
268 class CLayers *Layers() { return &m_Layers; }
270 const CCollision *Collision() const { return &m_Collision; }
271 const CRaceHelper *RaceHelper() const { return &m_RaceHelper; }
272 class IEditor *Editor() { return m_pEditor; }
273 class IFriends *Friends() { return m_pFriends; }
274 class IFriends *Foes() { return m_pFoes; }
275#if defined(CONF_AUTOUPDATE)
276 class IUpdater *Updater()
277 {
278 return m_pUpdater;
279 }
280#endif
281 class IHttp *Http()
282 {
283 return m_pHttp;
284 }
285
287 {
289 }
291
296
297 enum
298 {
302 };
305
307
309
310 // predicted players
313
314 // snap pointers
316 {
326
332
337
338 // spectate data
340 {
341 public:
346
348 float m_Zoom;
352
353 //
355 {
357
358 // snapshots
361
366
367 // interpolated position
369 };
370
372 };
373
380
381 // spectate cursor data
383 {
384 friend class CGameClient;
385 static constexpr int CURSOR_SAMPLES = 8; // how many samples to keep
386 static constexpr int SAMPLE_FRAME_WINDOW = 3; // how many samples should be used for polynomial interpolation
387 static constexpr int SAMPLE_FRAME_OFFSET = 2; // how many samples in the past should be included
388 static constexpr double INTERP_DELAY = 4.25; // how many ticks in the past to show, enables extrapolation with smaller value (<= SAMPLE_FRAME_WINDOW - SAMPLE_FRAME_OFFSET + 3)
389 static constexpr double REST_THRESHOLD = 3.0; // how many ticks of the same samples are considered to be resting
390
395
401
402 public:
403 bool IsAvailable() const { return m_Available; }
404 int Weapon() const { return m_Weapon; }
405 vec2 Target() const { return m_Target; }
406 vec2 WorldTarget() const { return m_WorldTarget; }
407 vec2 Position() const { return m_Position; }
409
410 // client data
412 {
416
426
427 bool m_Solo;
445
448
449 CTeeRenderInfo m_SkinInfo; // this is what the server reports
450 CTeeRenderInfo m_RenderInfo; // this is what we use
451
452 float m_Angle;
457 bool m_Foe;
458
460 bool m_Afk;
462 bool m_Spec;
463
464 // Editor allows 256 switches for now.
466
469
470 // rendered characters
476 int64_t m_aSmoothStart[2];
477 int64_t m_aSmoothLen[2];
479 int m_aPredTick[200];
482
483 void UpdateRenderInfo(bool IsTeamPlay);
484 void Reset();
485
486 class CSixup
487 {
488 public:
489 void Reset();
490
494 };
495
496 // 0.7 Skin
498 };
499
501
503 {
507
508 public:
509 CClientStats();
510
518
521
522 void Reset();
523
524 bool IsActive() const { return m_Active; }
525 void JoinGame(int Tick)
526 {
527 m_Active = true;
528 m_JoinTick = Tick;
529 };
530 void JoinSpec(int Tick)
531 {
532 m_Active = false;
533 m_IngameTicks += Tick - m_JoinTick;
534 };
535 int GetIngameTicks(int Tick) const { return m_IngameTicks + Tick - m_JoinTick; }
536 float GetFPM(int Tick, int TickSpeed) const { return (float)(m_Frags * TickSpeed * 60) / GetIngameTicks(Tick); }
537 };
538
540
542
543 void OnReset();
544
545 size_t ComponentCount() { return m_vpAll.size(); }
546
547 // hooks
548 void OnConnected() override;
549 void OnRender() override;
550 void OnUpdate() override;
551 void OnDummyDisconnect() override;
552 virtual void OnRelease();
553 void OnInit() override;
554 void OnConsoleInit() override;
555 void OnStateChange(int NewState, int OldState) override;
556 template<typename T>
557 void ApplySkin7InfoFromGameMsg(const T *pMsg, int ClientId, int Conn);
558 void ApplySkin7InfoFromSnapObj(const protocol7::CNetObj_De_ClientInfo *pObj, int ClientId) override;
559 void UpdateBotSkinDecoration(int ClientId);
560 int OnDemoRecSnap7(class CSnapshot *pFrom, class CSnapshot *pTo, int Conn) override;
561 void *TranslateGameMsg(int *pMsgId, CUnpacker *pUnpacker, int Conn);
562 int TranslateSnap(CSnapshot *pSnapDstSix, CSnapshot *pSnapSrcSeven, int Conn, bool Dummy) override;
563 void OnMessage(int MsgId, CUnpacker *pUnpacker, int Conn, bool Dummy) override;
564 void InvalidateSnapshot() override;
565 void OnNewSnapshot() override;
566 void OnPredict() override;
567 void OnActivateEditor() override;
568 void OnDummySwap() override;
569 int OnSnapInput(int *pData, bool Dummy, bool Force) override;
570 void OnShutdown() override;
571 void OnEnterGame() override;
572 void OnRconType(bool UsernameReq) override;
573 void OnRconLine(const char *pLine) override;
574 virtual void OnGameOver();
575 virtual void OnStartGame();
576 virtual void OnStartRound();
577 virtual void OnFlagGrab(int TeamId);
578 void OnWindowResize() override;
579
580 void InitializeLanguage() override;
581 bool m_LanguageChanged = false;
582 void OnLanguageChange();
584
585 void RefreshSkins();
586
587 void RenderShutdownMessage() override;
588
589 const char *GetItemName(int Type) const override;
590 const char *Version() const override;
591 const char *NetVersion() const override;
592 const char *NetVersion7() const override;
593 int DDNetVersion() const override;
594 const char *DDNetVersionStr() const override;
595 virtual int ClientVersion7() const override;
596
597 void DoTeamChangeMessage7(const char *pName, int ClientId, int Team, const char *pPrefix = "");
598
599 // actions
600 // TODO: move these
601 void SendSwitchTeam(int Team) const;
602 void SendStartInfo7(bool Dummy);
603 void SendSkinChange7(bool Dummy);
604 // Returns true if the requested skin change got applied by the server
605 bool GotWantedSkin7(bool Dummy);
606 void SendInfo(bool Start);
607 void SendDummyInfo(bool Start) override;
608 void SendKill(int ClientId) const;
609 void SendReadyChange7();
610
612
613 // DDRace
614
618 unsigned int m_DummyFire;
620
622
623 int IntersectCharacter(vec2 HookPos, vec2 NewPos, vec2 &NewPos2, int OwnId);
624
625 int LastRaceTick() const;
626 int CurrentRaceTime() const;
627
629
630 bool AntiPingPlayers() { return g_Config.m_ClAntiPing && g_Config.m_ClAntiPingPlayers && !m_Snap.m_SpecInfo.m_Active && Client()->State() != IClient::STATE_DEMOPLAYBACK && (m_aTuning[g_Config.m_ClDummy].m_PlayerCollision || m_aTuning[g_Config.m_ClDummy].m_PlayerHooking); }
631 bool AntiPingGrenade() { return g_Config.m_ClAntiPing && g_Config.m_ClAntiPingGrenade && !m_Snap.m_SpecInfo.m_Active && Client()->State() != IClient::STATE_DEMOPLAYBACK; }
632 bool AntiPingWeapons() { return g_Config.m_ClAntiPing && g_Config.m_ClAntiPingWeapons && !m_Snap.m_SpecInfo.m_Active && Client()->State() != IClient::STATE_DEMOPLAYBACK; }
633 bool AntiPingGunfire() { return AntiPingGrenade() && AntiPingWeapons() && g_Config.m_ClAntiPingGunfire; }
634 bool Predict() const;
636 const CTuningParams *GetTuning(int i) { return &m_aTuningList[i]; }
637 ColorRGBA GetDDTeamColor(int DDTeam, float Lightness = 0.5f) const;
638 void FormatClientId(int ClientId, char (&aClientId)[16], EClientIdFormat Format) const;
639
643
644 std::vector<SSwitchers> &Switchers() { return m_GameWorld.m_Core.m_vSwitchers; }
645 std::vector<SSwitchers> &PredSwitchers() { return m_PredictedWorld.m_Core.m_vSwitchers; }
646
647 void DummyResetInput() override;
648 void Echo(const char *pString) override;
649 bool IsOtherTeam(int ClientId) const;
650 int SwitchStateTeam() const;
651 bool IsLocalCharSuper() const;
652 bool CanDisplayWarning() const override;
655
656 void LoadGameSkin(const char *pPath, bool AsDir = false);
657 void LoadEmoticonsSkin(const char *pPath, bool AsDir = false);
658 void LoadParticlesSkin(const char *pPath, bool AsDir = false);
659 void LoadHudSkin(const char *pPath, bool AsDir = false);
660 void LoadExtrasSkin(const char *pPath, bool AsDir = false);
661
663 {
664 // health armor hud
669
670 // cursors
677
679
680 // weapons and hook
689
691
692 // particles
694
695 // stars
697
698 // projectiles
705
707
708 // muzzles
712
714
715 // pickups
728
731
732 // flags
735
736 // ninja bar (0.7)
741
742 bool IsSixup()
743 {
745 }
746 };
747
749 bool m_GameSkinLoaded = false;
750
752 {
762 };
763
766
768 {
770 };
771
774
776 {
808 };
809
811 bool m_HudSkinLoaded = false;
812
814 {
818 };
819
821 bool m_ExtrasSkinLoaded = false;
822
823 const std::vector<CSnapEntities> &SnapEntities() { return m_vSnapEntities; }
824
830
831 void ResetMultiView();
833 void CleanMultiViewId(int ClientId);
834
835private:
836 std::vector<CSnapEntities> m_vSnapEntities;
837 void SnapCollectEntities();
838
841
842 void UpdatePrediction();
845
847 void DetectStrongHook();
848
849 vec2 GetSmoothPos(int ClientId);
850
855
856 void LoadMapSettings();
860
867
868 void HandleMultiView();
869 bool IsMultiViewIdSet();
870 void CleanMultiViewIds();
871 bool InitMultiView(int Team);
872 float CalculateMultiViewMultiplier(vec2 TargetPos);
873 float CalculateMultiViewZoom(vec2 MinPos, vec2 MaxPos, float Vel);
874 float MapValue(float MaxValue, float MinValue, float MaxRange, float MinRange, float Value);
875
877 {
878 bool m_Solo;
887 };
888
890};
891
893
894#endif
Definition: background.h:22
Definition: binds.h:16
Definition: broadcast.h:12
Definition: camera.h:14
Definition: gameworld.h:120
Definition: gamecore.h:176
Definition: chat.h:21
Definition: collision.h:34
Definition: config.h:23
Definition: controls.h:14
Definition: countryflags.h:11
Definition: damageind.h:10
Definition: debughud.h:10
Definition: effects.h:11
Definition: emoticon.h:12
Definition: flow.h:9
Definition: freezebars.h:6
Definition: gameclient.h:487
int m_aUseCustomColors[protocol7::NUM_SKINPARTS]
Definition: gameclient.h:492
void Reset()
Definition: gameclient.cpp:2653
int m_aSkinPartColors[protocol7::NUM_SKINPARTS]
Definition: gameclient.h:493
char m_aaSkinPartNames[protocol7::NUM_SKINPARTS][protocol7::MAX_SKIN_LENGTH]
Definition: gameclient.h:491
Definition: gameclient.h:503
bool IsActive() const
Definition: gameclient.h:524
float GetFPM(int Tick, int TickSpeed) const
Definition: gameclient.h:536
int m_FlagGrabs
Definition: gameclient.h:519
int m_aFragsWith[NUM_WEAPONS]
Definition: gameclient.h:511
int m_aDeathsFrom[NUM_WEAPONS]
Definition: gameclient.h:512
int GetIngameTicks(int Tick) const
Definition: gameclient.h:535
int m_Suicides
Definition: gameclient.h:515
void Reset()
Definition: gameclient.cpp:2519
int m_BestSpree
Definition: gameclient.h:516
int m_JoinTick
Definition: gameclient.h:505
int m_Deaths
Definition: gameclient.h:514
int m_CurrentSpree
Definition: gameclient.h:517
int m_FlagCaptures
Definition: gameclient.h:520
void JoinGame(int Tick)
Definition: gameclient.h:525
bool m_Active
Definition: gameclient.h:506
void JoinSpec(int Tick)
Definition: gameclient.h:530
int m_Frags
Definition: gameclient.h:513
int m_IngameTicks
Definition: gameclient.h:504
CClientStats()
Definition: gameclient.cpp:2514
Definition: gameclient.h:383
int m_NumSamples
Definition: gameclient.h:394
static constexpr int SAMPLE_FRAME_WINDOW
Definition: gameclient.h:386
vec2 m_Position
Definition: gameclient.h:400
int m_CursorOwnerId
Definition: gameclient.h:391
bool m_Available
Definition: gameclient.h:396
bool IsAvailable() const
Definition: gameclient.h:403
static constexpr double INTERP_DELAY
Definition: gameclient.h:388
vec2 Position() const
Definition: gameclient.h:407
static constexpr int SAMPLE_FRAME_OFFSET
Definition: gameclient.h:387
int Weapon() const
Definition: gameclient.h:404
vec2 Target() const
Definition: gameclient.h:405
static constexpr int CURSOR_SAMPLES
Definition: gameclient.h:385
vec2 m_Target
Definition: gameclient.h:398
static constexpr double REST_THRESHOLD
Definition: gameclient.h:389
vec2 m_WorldTarget
Definition: gameclient.h:399
int m_Weapon
Definition: gameclient.h:397
vec2 m_aTargetSamplesData[CURSOR_SAMPLES]
Definition: gameclient.h:393
vec2 WorldTarget() const
Definition: gameclient.h:406
double m_aTargetSamplesTime[CURSOR_SAMPLES]
Definition: gameclient.h:392
Definition: gameclient.h:340
bool m_UsePosition
Definition: gameclient.h:344
int m_FollowFactor
Definition: gameclient.h:350
int m_Deadzone
Definition: gameclient.h:349
vec2 m_Position
Definition: gameclient.h:345
bool m_Active
Definition: gameclient.h:342
float m_Zoom
Definition: gameclient.h:348
bool m_HasCameraInfo
Definition: gameclient.h:347
int m_SpectatorId
Definition: gameclient.h:343
Definition: gameclient.h:128
void InitializeLanguage() override
Definition: gameclient.cpp:271
void OnStateChange(int NewState, int OldState) override
Definition: gameclient.cpp:1162
void DetectStrongHook()
Definition: gameclient.cpp:3334
void UpdateSpectatorCursor()
Definition: gameclient.cpp:3153
CSkins7 m_Skins7
Definition: gameclient.h:141
void DummyResetInput() override
Definition: gameclient.cpp:4148
const char * DDNetVersionStr() const override
Definition: gameclient.cpp:87
unsigned int m_DummyFire
Definition: gameclient.h:618
void LoadGameSkin(const char *pPath, bool AsDir=false)
Definition: gameclient.cpp:3486
bool CanDisplayWarning() const override
Definition: gameclient.cpp:4163
int OnDemoRecSnap7(class CSnapshot *pFrom, class CSnapshot *pTo, int Conn) override
Definition: sixup_translate_snapshot.cpp:501
CCharacterCore m_PredictedChar
Definition: gameclient.h:312
char m_aDDNetVersionStr[64]
Definition: gameclient.h:224
int IntersectCharacter(vec2 HookPos, vec2 NewPos, vec2 &NewPos2, int OwnId)
Definition: gameclient.cpp:2909
float m_LastZoom
Definition: gameclient.h:862
static void ConchainSpecialDummyInfoupdate(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData)
Definition: gameclient.cpp:2887
CRenderTools m_RenderTools
Definition: gameclient.h:541
class IConfigManager * m_pConfigManager
Definition: gameclient.h:187
int m_PredictedTick
Definition: gameclient.h:213
bool GotWantedSkin7(bool Dummy)
Definition: gameclient.cpp:2705
void OnRender() override
Definition: gameclient.cpp:753
int m_aCheckInfo[NUM_DUMMIES]
Definition: gameclient.h:222
CSnapState m_Snap
Definition: gameclient.h:374
const char * NetobjCorrectedOn()
Definition: gameclient.h:290
bool m_NewTick
Definition: gameclient.h:293
SClientHudSkin m_HudSkin
Definition: gameclient.h:810
bool m_GameOver
Definition: gameclient.h:246
CSounds m_Sounds
Definition: gameclient.h:150
CNamePlates m_NamePlates
Definition: gameclient.h:158
void SendSkinChange7(bool Dummy)
Definition: gameclient.cpp:2689
int m_IsDummySwapping
Definition: gameclient.h:852
const CRaceHelper * RaceHelper() const
Definition: gameclient.h:271
class IConsole * Console()
Definition: gameclient.h:261
void UpdateBotSkinDecoration(int ClientId)
Definition: sixup_translate_game.cpp:141
CSkins m_Skins
Definition: gameclient.h:140
const CCollision * Collision() const
Definition: gameclient.h:270
vec2 m_aLastPos[MAX_CLIENTS]
Definition: gameclient.h:242
void OnInit() override
Definition: gameclient.cpp:280
float m_LastFollowFactor
Definition: gameclient.h:865
static void ConMapbug(IConsole::IResult *pResult, void *pUserData)
Definition: gameclient.cpp:4113
int m_MultiViewTeam
Definition: gameclient.h:825
bool m_SuppressEvents
Definition: gameclient.h:292
float m_MultiViewPersonalZoom
Definition: gameclient.h:826
size_t ComponentCount()
Definition: gameclient.h:545
float CalculateMultiViewZoom(vec2 MinPos, vec2 MaxPos, float Vel)
Definition: gameclient.cpp:4469
class IServerBrowser * ServerBrowser() const
Definition: gameclient.h:266
bool m_EmoticonsSkinLoaded
Definition: gameclient.h:773
CCountryFlags m_CountryFlags
Definition: gameclient.h:142
CDebugHud m_DebugHud
Definition: gameclient.h:145
class IGraphics * Graphics() const
Definition: gameclient.h:253
bool AntiPingGrenade()
Definition: gameclient.h:631
bool m_HudSkinLoaded
Definition: gameclient.h:811
class IStorage * m_pStorage
Definition: gameclient.h:190
IEngine * Engine() const
Definition: gameclient.h:252
void OnRconLine(const char *pLine) override
Definition: gameclient.cpp:1268
CNetObj_PlayerInput m_DummyInput
Definition: gameclient.h:616
CCollision m_Collision
Definition: gameclient.h:203
int m_LastFlagCarrierRed
Definition: gameclient.h:219
void OnActivateEditor() override
Definition: gameclient.cpp:2509
class IEditor * Editor()
Definition: gameclient.h:272
class IDemoPlayer * DemoPlayer() const
Definition: gameclient.h:263
CInfoMessages m_InfoMessages
Definition: gameclient.h:131
CHud m_Hud
Definition: gameclient.h:144
void SendSwitchTeam(int Team) const
Definition: gameclient.cpp:2663
void SendDummyInfo(bool Start) override
Definition: gameclient.cpp:2787
class CConfig * Config() const
Definition: gameclient.h:260
void DoTeamChangeMessage7(const char *pName, int ClientId, int Team, const char *pPrefix="")
Definition: sixup_translate_game.cpp:68
void OnMessage(int MsgId, CUnpacker *pUnpacker, int Conn, bool Dummy) override
Definition: gameclient.cpp:964
class CTeamsCore m_Teams
Definition: gameclient.h:621
void OnReset()
Definition: gameclient.cpp:584
bool IsMultiViewIdSet()
Definition: gameclient.cpp:4528
void OnPredict() override
Definition: gameclient.cpp:2255
std::vector< class CComponent * > m_vpAll
Definition: gameclient.h:176
class IFavorites * Favorites() const
Definition: gameclient.h:265
int LastRaceTick() const
Definition: gameclient.cpp:890
virtual void OnStartGame()
Definition: gameclient.cpp:1189
void OnConnected() override
Definition: gameclient.cpp:548
void UpdatePositions()
Definition: gameclient.cpp:689
void RenderShutdownMessage() override
Definition: gameclient.cpp:1244
SClientEmoticonsSkin m_EmoticonsSkin
Definition: gameclient.h:772
static void ConchainSpecialDummy(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData)
Definition: gameclient.cpp:2894
CCamera m_Camera
Definition: gameclient.h:132
bool m_MultiViewShowHud
Definition: gameclient.h:827
bool PredictDummy()
Definition: gameclient.h:635
CGhost m_Ghost
Definition: gameclient.h:171
float m_LastDeadzone
Definition: gameclient.h:864
bool m_aReceivedTuning[NUM_DUMMIES]
Definition: gameclient.h:376
class CGameClient::CCursorInfo m_CursorInfo
std::vector< CSnapEntities > m_vSnapEntities
Definition: gameclient.h:836
CBinds m_Binds
Definition: gameclient.h:137
void SendStartInfo7(bool Dummy)
Definition: gameclient.cpp:2670
class ITextRender * m_pTextRender
Definition: gameclient.h:184
CEmoticon m_Emoticon
Definition: gameclient.h:151
class IConsole * m_pConsole
Definition: gameclient.h:189
const char * Version() const override
Definition: gameclient.cpp:83
std::vector< class CComponent * > m_vpInput
Definition: gameclient.h:177
class IClient * m_pClient
Definition: gameclient.h:185
static void ConchainMenuMap(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData)
Definition: gameclient.cpp:4133
CCollision * Collision()
Definition: gameclient.h:269
class ISound * m_pSound
Definition: gameclient.h:186
float m_LastScreenAspect
Definition: gameclient.h:863
CParticles m_Particles
Definition: gameclient.h:138
CBroadcast m_Broadcast
Definition: gameclient.h:135
void OnConsoleInit() override
Definition: gameclient.cpp:91
class IDemoRecorder * DemoRecorder(int Recorder) const
Definition: gameclient.h:264
static void ConchainLanguageUpdate(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData)
Definition: gameclient.cpp:2869
void OnLanguageChange()
Definition: gameclient.cpp:1223
const char * NetVersion7() const override
Definition: gameclient.cpp:85
static void ConchainRefreshSkins(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData)
Definition: gameclient.cpp:4030
virtual void OnGameOver()
Definition: gameclient.cpp:1183
CScoreboard m_Scoreboard
Definition: gameclient.h:148
class ITextRender * TextRender() const
Definition: gameclient.h:262
int m_aExpectingTuningSince[NUM_DUMMIES]
Definition: gameclient.h:378
bool Predict() const
Definition: gameclient.cpp:904
void SendKill(int ClientId) const
Definition: gameclient.cpp:2829
int m_aLocalTuneZone[NUM_DUMMIES]
Definition: gameclient.h:375
CStatboard m_Statboard
Definition: gameclient.h:149
const char * GetItemName(int Type) const override
Definition: gameclient.cpp:89
bool m_NewPredictedTick
Definition: gameclient.h:294
float m_LastShowDistanceZoom
Definition: gameclient.h:861
virtual void OnStartRound()
Definition: gameclient.cpp:1196
CMapSounds m_MapSounds
Definition: gameclient.h:168
CMotd m_Motd
Definition: gameclient.h:134
bool m_aLastActive[MAX_CLIENTS]
Definition: gameclient.h:243
bool m_ExtrasSkinLoaded
Definition: gameclient.h:821
static void ConchainSpecialInfoupdate(IConsole::IResult *pResult, void *pUserData, IConsole::FCommandCallback pfnCallback, void *pCallbackUserData)
Definition: gameclient.cpp:2880
void ResetMultiView()
Definition: gameclient.cpp:4500
int m_PredictedDummyId
Definition: gameclient.h:851
CGameInfo m_GameInfo
Definition: gameclient.h:304
class CLayers * Layers()
Definition: gameclient.h:268
vec2 GetSmoothPos(int ClientId)
Definition: gameclient.cpp:3419
CNetObjHandler m_NetObjHandler
Definition: gameclient.h:178
void InvalidateSnapshot() override
Definition: gameclient.cpp:1513
protocol7::CNetObjHandler * GetNetObjHandler7() override
Definition: gameclient.cpp:4173
class IInput * m_pInput
Definition: gameclient.h:182
static void ConReadyChange7(IConsole::IResult *pResult, void *pUserData)
Definition: gameclient.cpp:2862
void OnDummyDisconnect() override
Definition: gameclient.cpp:881
class IServerBrowser * m_pServerBrowser
Definition: gameclient.h:193
SClientParticlesSkin m_ParticlesSkin
Definition: gameclient.h:764
void LoadEmoticonsSkin(const char *pPath, bool AsDir=false)
Definition: gameclient.cpp:3743
int m_LastRoundStartTick
Definition: gameclient.h:216
int NetobjNumCorrections()
Definition: gameclient.h:286
CTuningParams m_aTuning[NUM_DUMMIES]
Definition: gameclient.h:379
int m_LastFlagCarrierBlue
Definition: gameclient.h:220
CTuningParams * TuningList()
Definition: gameclient.h:859
void UpdateRenderedCharacters()
Definition: gameclient.cpp:3278
void LoadParticlesSkin(const char *pPath, bool AsDir=false)
Definition: gameclient.cpp:3787
int CurrentRaceTime() const
Definition: gameclient.cpp:895
CRaceDemo m_RaceDemo
Definition: gameclient.h:170
CSpectator m_Spectator
Definition: gameclient.h:155
CEffects m_Effects
Definition: gameclient.h:147
class IEditor * m_pEditor
Definition: gameclient.h:194
CGameWorld m_GameWorld
Definition: gameclient.h:640
void ProcessEvents()
Definition: gameclient.cpp:1273
void HandleLanguageChanged()
Definition: gameclient.cpp:1231
bool m_GamePaused
Definition: gameclient.h:247
SClientGameSkin m_GameSkin
Definition: gameclient.h:748
CGameConsole m_GameConsole
Definition: gameclient.h:136
bool m_aDDRaceMsgSent[NUM_DUMMIES]
Definition: gameclient.h:839
virtual void OnFlagGrab(int TeamId)
Definition: gameclient.cpp:1207
CGameWorld m_PrevPredictedWorld
Definition: gameclient.h:642
const CTuningParams * GetTuning(int i)
Definition: gameclient.h:636
CFlow m_Flow
Definition: gameclient.h:143
void OnDummySwap() override
Definition: gameclient.cpp:482
CLayers m_Layers
Definition: gameclient.h:202
bool m_aMultiViewId[MAX_CLIENTS]
Definition: gameclient.h:829
void SnapCollectEntities()
Definition: gameclient.cpp:4178
void UpdatePrediction()
Definition: gameclient.cpp:2960
void UpdateEditorIngameMoved()
Definition: gameclient.cpp:2238
CMapLayers m_MapLayersBackground
Definition: gameclient.h:163
CControls m_Controls
Definition: gameclient.h:146
int m_ServerMode
Definition: gameclient.h:303
CClientData m_aClients[MAX_CLIENTS]
Definition: gameclient.h:500
int m_aSwitchStateTeam[NUM_DUMMIES]
Definition: gameclient.h:854
int m_aFlagDropTick[2]
Definition: gameclient.h:295
IKernel * Kernel()
Definition: gameclient.h:251
int SwitchStateTeam() const
Definition: gameclient.cpp:3468
float CalculateMultiViewMultiplier(vec2 TargetPos)
Definition: gameclient.cpp:4446
int m_aExpectingTuningForZone[NUM_DUMMIES]
Definition: gameclient.h:377
void CleanMultiViewId(int ClientId)
Definition: gameclient.cpp:4518
int DDNetVersion() const override
Definition: gameclient.cpp:86
int m_LastRaceTick
Definition: gameclient.h:217
CFreezeBars m_FreezeBars
Definition: gameclient.h:159
int m_DemoSpecId
Definition: gameclient.h:306
class IClient * Client() const
Definition: gameclient.h:254
class IFavorites * m_pFavorites
Definition: gameclient.h:192
void CleanMultiViewIds()
Definition: gameclient.cpp:4511
class IFriends * m_pFoes
Definition: gameclient.h:196
CPlayers m_Players
Definition: gameclient.h:157
class ISound * Sound() const
Definition: gameclient.h:256
CTouchControls m_TouchControls
Definition: gameclient.h:153
CNetObj_PlayerInput m_HammerInput
Definition: gameclient.h:617
const std::vector< CSnapEntities > & SnapEntities()
Definition: gameclient.h:823
CClientStats m_aStats[MAX_CLIENTS]
Definition: gameclient.h:539
static void ConTeam(IConsole::IResult *pResult, void *pUserData)
Definition: gameclient.cpp:2852
CMapLayers m_MapLayersForeground
Definition: gameclient.h:164
std::vector< SSwitchers > & PredSwitchers()
Definition: gameclient.h:645
CMapImages m_MapImages
Definition: gameclient.h:161
static void ConTuneZone(IConsole::IResult *pResult, void *pUserData)
Definition: gameclient.cpp:4102
CTuningParams m_aTuningList[NUM_TUNEZONES]
Definition: gameclient.h:858
vec2 m_LocalCharacterPos
Definition: gameclient.h:308
CItems m_Items
Definition: gameclient.h:160
const char * NetVersion() const override
Definition: gameclient.cpp:84
bool IsLocalCharSuper() const
Definition: gameclient.cpp:3479
ColorRGBA GetDDTeamColor(int DDTeam, float Lightness=0.5f) const
Definition: gameclient.cpp:923
bool IsOtherTeam(int ClientId) const
Definition: gameclient.cpp:3445
void LoadHudSkin(const char *pPath, bool AsDir=false)
Definition: gameclient.cpp:3858
CUi m_UI
Definition: gameclient.h:204
class CConfig * m_pConfig
Definition: gameclient.h:188
void OnWindowResize() override
Definition: gameclient.cpp:1215
int FindFirstMultiViewId()
Definition: gameclient.cpp:4533
CMapBugs m_MapBugs
Definition: gameclient.h:857
SMultiView m_MultiView
Definition: gameclient.h:889
void FormatClientId(int ClientId, char(&aClientId)[16], EClientIdFormat Format) const
Definition: gameclient.cpp:931
void SendReadyChange7()
Definition: gameclient.cpp:2841
bool m_GameSkinLoaded
Definition: gameclient.h:749
void OnRconType(bool UsernameReq) override
Definition: gameclient.cpp:1263
void * TranslateGameMsg(int *pMsgId, CUnpacker *pUnpacker, int Conn)
Definition: sixup_translate_game.cpp:176
int m_aShowOthers[NUM_DUMMIES]
Definition: gameclient.h:840
bool m_LastDummyConnected
Definition: gameclient.h:866
class IInput * Input() const
Definition: gameclient.h:257
bool AntiPingGunfire()
Definition: gameclient.h:633
void Echo(const char *pString) override
Definition: gameclient.cpp:3440
bool AntiPingWeapons()
Definition: gameclient.h:632
protocol7::CNetObjHandler m_NetObjHandler7
Definition: gameclient.h:179
CDamageInd m_DamageInd
Definition: gameclient.h:152
CGameWorld m_PredictedWorld
Definition: gameclient.h:641
bool IsTeamPlay()
Definition: gameclient.h:628
void HandleMultiView()
Definition: gameclient.cpp:4224
class CUi * Ui()
Definition: gameclient.h:255
int m_aLastUpdateTick[MAX_CLIENTS]
Definition: gameclient.h:846
CTooltips m_Tooltips
Definition: gameclient.h:173
bool InitMultiView(int Team)
Definition: gameclient.cpp:4337
class IDemoPlayer * m_pDemoPlayer
Definition: gameclient.h:191
int m_EditorMovementDelay
Definition: gameclient.h:210
CVoting m_Voting
Definition: gameclient.h:154
void ApplySkin7InfoFromGameMsg(const T *pMsg, int ClientId, int Conn)
Definition: sixup_translate_game.cpp:82
CMenus m_Menus
Definition: gameclient.h:139
CBackground m_Background
Definition: gameclient.h:165
@ SERVERMODE_PUREMOD
Definition: gameclient.h:301
@ SERVERMODE_PURE
Definition: gameclient.h:299
@ SERVERMODE_MOD
Definition: gameclient.h:300
void OnNewSnapshot() override
Definition: gameclient.cpp:1522
void ApplySkin7InfoFromSnapObj(const protocol7::CNetObj_De_ClientInfo *pObj, int ClientId) override
Definition: sixup_translate_game.cpp:126
class IFriends * m_pFriends
Definition: gameclient.h:195
class IHttp * m_pHttp
Definition: gameclient.h:200
class IStorage * Storage() const
Definition: gameclient.h:258
void OnShutdown() override
Definition: gameclient.cpp:1173
void LoadExtrasSkin(const char *pPath, bool AsDir=false)
Definition: gameclient.cpp:3959
class IEngine * m_pEngine
Definition: gameclient.h:181
virtual int ClientVersion7() const override
Definition: gameclient.cpp:88
void OnUpdate() override
Definition: gameclient.cpp:429
bool m_LanguageChanged
Definition: gameclient.h:581
int TranslateSnap(CSnapshot *pSnapDstSix, CSnapshot *pSnapSrcSeven, int Conn, bool Dummy) override
Definition: sixup_translate_snapshot.cpp:7
CNetObjHandler * GetNetObjHandler() override
Definition: gameclient.cpp:4168
bool m_MultiViewActivated
Definition: gameclient.h:828
class IFriends * Foes()
Definition: gameclient.h:274
CRaceHelper m_RaceHelper
Definition: gameclient.h:205
class IConfigManager * ConfigManager() const
Definition: gameclient.h:259
int m_aLastNewPredictedTick[NUM_DUMMIES]
Definition: gameclient.h:214
bool m_ReceivedDDNetPlayer
Definition: gameclient.h:619
CCharOrder m_CharOrder
Definition: gameclient.h:853
bool AntiPingPlayers()
Definition: gameclient.h:630
void RefreshSkins()
Definition: gameclient.cpp:4009
SClientExtrasSkin m_ExtrasSkin
Definition: gameclient.h:820
class IGraphics * m_pGraphics
Definition: gameclient.h:183
class IHttp * Http()
Definition: gameclient.h:281
std::vector< SSwitchers > & Switchers()
Definition: gameclient.h:644
CMenuBackground m_MenuBackground
Definition: gameclient.h:166
int m_PrevLocalId
Definition: gameclient.h:248
int m_aLocalIds[NUM_DUMMIES]
Definition: gameclient.h:615
void LoadMapSettings()
Definition: gameclient.cpp:4045
bool m_ParticlesSkinLoaded
Definition: gameclient.h:765
int OnSnapInput(int *pData, bool Dummy, bool Force) override
Definition: gameclient.cpp:496
class CRenderTools * RenderTools()
Definition: gameclient.h:267
float MapValue(float MaxValue, float MinValue, float MaxRange, float MinRange, float Value)
Definition: gameclient.cpp:4495
static void ConKill(IConsole::IResult *pResult, void *pUserData)
Definition: gameclient.cpp:2857
void OnEnterGame() override
Definition: gameclient.cpp:1179
CChat m_Chat
Definition: gameclient.h:133
int m_NextChangeInfo
Definition: gameclient.h:611
CCharacterCore m_PredictedPrevChar
Definition: gameclient.h:311
class IFriends * Friends()
Definition: gameclient.h:273
virtual void OnRelease()
Definition: gameclient.cpp:957
void SendInfo(bool Start)
Definition: gameclient.cpp:2745
Definition: console.h:26
Definition: gameclient.h:66
bool m_BugDDRaceGhost
Definition: gameclient.h:79
bool m_EntitiesFNG
Definition: gameclient.h:92
bool m_AllowZoom
Definition: gameclient.h:77
bool m_AllowXSkins
Definition: gameclient.h:101
bool m_EntitiesRace
Definition: gameclient.h:91
bool m_AllowHookColl
Definition: gameclient.h:76
bool m_NoWeakHookAndBounce
Definition: gameclient.h:107
bool m_DDRaceTeam
Definition: gameclient.h:110
bool m_PredictDDRace
Definition: gameclient.h:85
bool m_FlagStartsRace
Definition: gameclient.h:68
bool m_DDRaceRecordMessage
Definition: gameclient.h:71
bool m_EntitiesFDDrace
Definition: gameclient.h:95
bool m_EntitiesDDNet
Definition: gameclient.h:89
bool m_PredictVanilla
Definition: gameclient.h:87
bool m_RaceRecordMessage
Definition: gameclient.h:72
bool m_AllowEyeWheel
Definition: gameclient.h:75
bool m_PredictFNG
Definition: gameclient.h:84
bool m_HudAmmo
Definition: gameclient.h:104
bool m_RaceSounds
Definition: gameclient.h:73
bool m_HudHealthArmor
Definition: gameclient.h:103
bool m_EntitiesVanilla
Definition: gameclient.h:93
bool m_EntitiesBW
Definition: gameclient.h:94
bool m_PredictDDRaceTiles
Definition: gameclient.h:86
bool m_TimeScore
Definition: gameclient.h:69
bool m_EntitiesDDRace
Definition: gameclient.h:90
bool m_DontMaskEntities
Definition: gameclient.h:100
bool m_BugFNGLaserRange
Definition: gameclient.h:81
bool m_HudDDRace
Definition: gameclient.h:105
bool m_BugDDRaceInput
Definition: gameclient.h:80
bool m_Pvp
Definition: gameclient.h:98
bool m_UnlimitedAmmo
Definition: gameclient.h:70
bool m_Race
Definition: gameclient.h:97
bool m_NoSkinChangeForFrozen
Definition: gameclient.h:108
bool m_BugVanillaBounce
Definition: gameclient.h:82
Definition: gameworld.h:18
CWorldCore m_Core
Definition: gameworld.h:35
Definition: ghost.h:56
Definition: hud.h:44
Definition: infomessages.h:10
Definition: items.h:12
Definition: layers.h:13
Definition: mapbugs.h:22
Definition: mapimages.h:36
Definition: maplayers.h:27
@ TYPE_FOREGROUND
Definition: maplayers.h:138
@ TYPE_BACKGROUND
Definition: maplayers.h:136
Definition: mapsounds.h:12
Definition: menu_background.h:33
Definition: menus.h:64
Definition: motd.h:12
Definition: nameplates.h:100
Definition: protocol.h:1261
int NumObjCorrections() const
Definition: protocol.cpp:17
const char * CorrectedObjOn() const
Definition: protocol.cpp:18
Definition: particles.h:64
Definition: players.h:11
Definition: race_demo.h:10
Definition: race.h:9
Definition: render.h:188
Definition: scoreboard.h:13
Definition: skins7.h:20
Definition: skins.h:20
Definition: gameclient.h:114
const CNetObj_EntityEx * m_pDataEx
Definition: gameclient.h:117
IClient::CSnapItem m_Item
Definition: gameclient.h:116
Definition: snapshot.h:31
Definition: sounds.h:22
Definition: spectator.h:12
Definition: statboard.h:10
Definition: teamscore.h:25
Definition: render.h:34
Definition: tooltips.h:27
Definition: touch_controls.h:23
Definition: gamecore.h:41
Definition: ui.h:283
Definition: packer.h:54
Definition: voting.h:15
std::vector< SSwitchers > m_vSwitchers
Definition: gamecore.h:172
Definition: color.h:173
Definition: color.h:210
Definition: client.h:109
Definition: client.h:36
virtual class IDemoRecorder * DemoRecorder(int Recorder)=0
@ STATE_DEMOPLAYBACK
Definition: client.h:54
virtual bool DummyConnected() const =0
EClientState State() const
Definition: client.h:137
Definition: config.h:9
Definition: console.h:47
Definition: console.h:18
void(* FCommandCallback)(IResult *pResult, void *pUserData)
Definition: console.h:94
Definition: demo.h:60
Definition: demo.h:102
Definition: editor.h:8
Definition: engine.h:15
Definition: favorites.h:14
Definition: friends.h:19
Definition: client.h:349
Definition: graphics.h:201
bool IsValid() const
Definition: graphics.h:211
Definition: graphics.h:184
Definition: http.h:12
Definition: input.h:18
IKernel * Kernel()
Definition: kernel.h:16
Definition: kernel.h:34
Definition: serverbrowser.h:263
Definition: sound.h:12
Definition: storage.h:20
Definition: textrender.h:314
Definition: updater.h:7
Definition: protocol7.h:1229
CConfig g_Config
Definition: config.cpp:12
@ NUM_DUMMIES
Definition: enums.h:8
@ MAX_CLAN_LENGTH
Definition: protocol.h:98
@ MAX_CLIENTS
Definition: protocol.h:88
@ MAX_SKIN_LENGTH
Definition: protocol.h:99
@ MAX_NAME_LENGTH
Definition: protocol.h:97
@ NUM_TUNEZONES
Definition: protocol.h:136
@ GAMEFLAG_TEAMS
Definition: protocol.h:145
@ NUM_WEAPONS
Definition: protocol.h:1257
ColorRGBA CalculateNameColor(ColorHSLA TextColorHSL)
Definition: gameclient.cpp:2955
EClientIdFormat
Definition: gameclient.h:121
@ MAX_SKIN_LENGTH
Definition: protocol7.h:63
@ NUM_SKINPARTS
Definition: protocol7.h:36
Definition: gameclient.h:412
int m_ColorFeet
Definition: gameclient.h:415
bool m_ChatIgnore
Definition: gameclient.h:454
bool m_HookHitDisabled
Definition: gameclient.h:436
vec2 m_SpecChar
Definition: gameclient.h:481
int m_FreezeEnd
Definition: gameclient.h:442
char m_aClan[MAX_CLAN_LENGTH]
Definition: gameclient.h:418
bool m_Foe
Definition: gameclient.h:457
int m_aPredTick[200]
Definition: gameclient.h:479
bool m_EndlessHook
Definition: gameclient.h:430
bool m_LiveFrozen
Definition: gameclient.h:444
int m_Emoticon
Definition: gameclient.h:423
bool m_DeepFrozen
Definition: gameclient.h:443
bool m_Friend
Definition: gameclient.h:456
vec2 m_aPredPos[200]
Definition: gameclient.h:478
CCharacterCore m_Predicted
Definition: gameclient.h:446
bool m_IsPredicted
Definition: gameclient.h:474
bool m_Super
Definition: gameclient.h:437
bool m_Active
Definition: gameclient.h:453
CNetObj_Character m_RenderCur
Definition: gameclient.h:471
bool m_HasTelegunLaser
Definition: gameclient.h:441
int64_t m_aSmoothLen[2]
Definition: gameclient.h:477
float m_EmoticonStartFraction
Definition: gameclient.h:424
int m_ColorBody
Definition: gameclient.h:414
vec2 m_RenderPos
Definition: gameclient.h:473
int m_Team
Definition: gameclient.h:422
int m_AuthLevel
Definition: gameclient.h:459
bool m_aSwitchStates[256]
Definition: gameclient.h:465
bool m_ShotgunHitDisabled
Definition: gameclient.h:435
bool m_Solo
Definition: gameclient.h:427
bool m_HasTelegunGun
Definition: gameclient.h:439
int m_EmoticonStartTick
Definition: gameclient.h:425
bool m_Invincible
Definition: gameclient.h:438
char m_aName[MAX_NAME_LENGTH]
Definition: gameclient.h:417
CNetObj_Character m_Evolved
Definition: gameclient.h:468
CNetObj_Character m_RenderPrev
Definition: gameclient.h:472
bool m_GrenadeHitDisabled
Definition: gameclient.h:433
bool m_HammerHitDisabled
Definition: gameclient.h:432
bool m_Jetpack
Definition: gameclient.h:428
CSixup m_aSixup[NUM_DUMMIES]
Definition: gameclient.h:497
bool m_Afk
Definition: gameclient.h:460
float m_Angle
Definition: gameclient.h:452
bool m_Spec
Definition: gameclient.h:462
CNetObj_Character m_Snapped
Definition: gameclient.h:467
bool m_IsPredictedLocal
Definition: gameclient.h:475
CTeeRenderInfo m_RenderInfo
Definition: gameclient.h:450
bool m_CollisionDisabled
Definition: gameclient.h:429
bool m_EmoticonIgnore
Definition: gameclient.h:455
void Reset()
Definition: gameclient.cpp:2578
int m_Country
Definition: gameclient.h:419
int m_SkinColor
Definition: gameclient.h:421
bool m_SpecCharPresent
Definition: gameclient.h:480
int m_UseCustomColor
Definition: gameclient.h:413
char m_aSkinName[MAX_SKIN_LENGTH]
Definition: gameclient.h:420
int64_t m_aSmoothStart[2]
Definition: gameclient.h:476
void UpdateRenderInfo(bool IsTeamPlay)
Definition: gameclient.cpp:2537
bool m_EndlessJump
Definition: gameclient.h:431
bool m_HasTelegunGrenade
Definition: gameclient.h:440
bool m_Paused
Definition: gameclient.h:461
CCharacterCore m_PrevPredicted
Definition: gameclient.h:447
CTeeRenderInfo m_SkinInfo
Definition: gameclient.h:449
bool m_LaserHitDisabled
Definition: gameclient.h:434
Definition: gameclient.h:355
vec2 m_Position
Definition: gameclient.h:368
CNetObj_Character m_Cur
Definition: gameclient.h:360
bool m_HasExtendedDisplayInfo
Definition: gameclient.h:365
const CNetObj_DDNetCharacter * m_PrevExtendedData
Definition: gameclient.h:363
CNetObj_DDNetCharacter m_ExtendedData
Definition: gameclient.h:362
bool m_Active
Definition: gameclient.h:356
bool m_HasExtendedData
Definition: gameclient.h:364
CNetObj_Character m_Prev
Definition: gameclient.h:359
Definition: gameclient.h:316
int m_HighestClientId
Definition: gameclient.h:336
class CGameClient::CSnapState::CSpectateInfo m_SpecInfo
const CNetObj_PlayerInfo * m_pLocalInfo
Definition: gameclient.h:319
const CNetObj_SpectatorInfo * m_pSpectatorInfo
Definition: gameclient.h:320
const CNetObj_GameInfo * m_pGameInfoObj
Definition: gameclient.h:323
const CNetObj_SpectatorInfo * m_pPrevSpectatorInfo
Definition: gameclient.h:321
int m_LocalClientId
Definition: gameclient.h:333
const CNetObj_PlayerInfo * m_apInfoByDDTeamScore[MAX_CLIENTS]
Definition: gameclient.h:330
const CNetObj_PlayerInfo * m_apInfoByScore[MAX_CLIENTS]
Definition: gameclient.h:328
const CNetObj_PlayerInfo * m_apInfoByName[MAX_CLIENTS]
Definition: gameclient.h:329
int m_aTeamSize[2]
Definition: gameclient.h:335
const CNetObj_Character * m_pLocalPrevCharacter
Definition: gameclient.h:318
CCharacterInfo m_aCharacters[MAX_CLIENTS]
Definition: gameclient.h:371
const CNetObj_PlayerInfo * m_apPlayerInfos[MAX_CLIENTS]
Definition: gameclient.h:327
const CNetObj_GameData * m_pGameDataObj
Definition: gameclient.h:324
const CNetObj_PlayerInfo * m_apInfoByDDTeamName[MAX_CLIENTS]
Definition: gameclient.h:331
const CNetObj_Character * m_pLocalCharacter
Definition: gameclient.h:317
int m_NumPlayers
Definition: gameclient.h:334
int m_GameDataSnapId
Definition: gameclient.h:325
const CNetObj_Flag * m_apFlags[2]
Definition: gameclient.h:322
Definition: gameclient.h:768
IGraphics::CTextureHandle m_aSpriteEmoticons[16]
Definition: gameclient.h:769
Definition: gameclient.h:814
IGraphics::CTextureHandle m_SpriteParticleSnowflake
Definition: gameclient.h:815
IGraphics::CTextureHandle m_aSpriteParticles[2]
Definition: gameclient.h:817
IGraphics::CTextureHandle m_SpriteParticleSparkle
Definition: gameclient.h:816
Definition: gameclient.h:663
IGraphics::CTextureHandle m_aSpriteWeaponProjectiles[6]
Definition: gameclient.h:706
IGraphics::CTextureHandle m_SpriteNinjaBarEmptyRight
Definition: gameclient.h:740
IGraphics::CTextureHandle m_SpritePickupGun
Definition: gameclient.h:726
IGraphics::CTextureHandle m_SpriteWeaponShotgun
Definition: gameclient.h:685
IGraphics::CTextureHandle m_SpritePickupArmorLaser
Definition: gameclient.h:721
IGraphics::CTextureHandle m_SpriteWeaponShotgunProjectile
Definition: gameclient.h:700
IGraphics::CTextureHandle m_SpritePickupArmorGrenade
Definition: gameclient.h:719
IGraphics::CTextureHandle m_SpriteArmorEmpty
Definition: gameclient.h:668
IGraphics::CTextureHandle m_SpriteWeaponNinjaProjectile
Definition: gameclient.h:703
IGraphics::CTextureHandle m_SpriteWeaponGun
Definition: gameclient.h:684
bool IsSixup()
Definition: gameclient.h:742
IGraphics::CTextureHandle m_aaSpriteWeaponNinjaMuzzles[3]
Definition: gameclient.h:711
IGraphics::CTextureHandle m_SpritePickupArmorNinja
Definition: gameclient.h:720
IGraphics::CTextureHandle m_SpriteHookChain
Definition: gameclient.h:681
IGraphics::CTextureHandle m_SpriteHookHead
Definition: gameclient.h:682
IGraphics::CTextureHandle m_SpriteWeaponGrenadeProjectile
Definition: gameclient.h:701
IGraphics::CTextureHandle m_SpriteNinjaBarEmpty
Definition: gameclient.h:739
IGraphics::CTextureHandle m_SpriteWeaponLaser
Definition: gameclient.h:688
IGraphics::CTextureHandle m_SpriteWeaponLaserProjectile
Definition: gameclient.h:704
IGraphics::CTextureHandle m_aSpriteWeaponGunMuzzles[3]
Definition: gameclient.h:709
IGraphics::CTextureHandle m_aaSpriteWeaponsMuzzles[6][3]
Definition: gameclient.h:713
IGraphics::CTextureHandle m_SpritePickupHealth
Definition: gameclient.h:716
IGraphics::CTextureHandle m_SpriteWeaponNinjaCursor
Definition: gameclient.h:675
IGraphics::CTextureHandle m_SpriteWeaponLaserCursor
Definition: gameclient.h:676
IGraphics::CTextureHandle m_SpriteFlagRed
Definition: gameclient.h:734
IGraphics::CTextureHandle m_SpritePickupGrenade
Definition: gameclient.h:722
IGraphics::CTextureHandle m_SpritePickupLaser
Definition: gameclient.h:724
IGraphics::CTextureHandle m_SpritePickupArmorShotgun
Definition: gameclient.h:718
IGraphics::CTextureHandle m_aSpriteWeaponCursors[6]
Definition: gameclient.h:678
IGraphics::CTextureHandle m_aSpritePickupWeaponArmor[4]
Definition: gameclient.h:730
IGraphics::CTextureHandle m_SpritePickupArmor
Definition: gameclient.h:717
IGraphics::CTextureHandle m_SpriteNinjaBarFullLeft
Definition: gameclient.h:737
IGraphics::CTextureHandle m_SpriteWeaponGrenade
Definition: gameclient.h:686
IGraphics::CTextureHandle m_SpriteWeaponShotgunCursor
Definition: gameclient.h:673
IGraphics::CTextureHandle m_SpriteWeaponNinja
Definition: gameclient.h:687
IGraphics::CTextureHandle m_aSpriteWeapons[6]
Definition: gameclient.h:690
IGraphics::CTextureHandle m_SpriteArmorFull
Definition: gameclient.h:667
IGraphics::CTextureHandle m_SpriteFlagBlue
Definition: gameclient.h:733
IGraphics::CTextureHandle m_SpritePickupShotgun
Definition: gameclient.h:723
IGraphics::CTextureHandle m_aSpriteWeaponShotgunMuzzles[3]
Definition: gameclient.h:710
IGraphics::CTextureHandle m_SpriteHealthFull
Definition: gameclient.h:665
IGraphics::CTextureHandle m_SpriteWeaponHammerCursor
Definition: gameclient.h:671
IGraphics::CTextureHandle m_aSpriteParticles[9]
Definition: gameclient.h:693
IGraphics::CTextureHandle m_SpriteHealthEmpty
Definition: gameclient.h:666
IGraphics::CTextureHandle m_SpriteNinjaBarFull
Definition: gameclient.h:738
IGraphics::CTextureHandle m_SpritePickupHammer
Definition: gameclient.h:727
IGraphics::CTextureHandle m_SpriteWeaponGrenadeCursor
Definition: gameclient.h:674
IGraphics::CTextureHandle m_SpriteWeaponHammer
Definition: gameclient.h:683
IGraphics::CTextureHandle m_SpriteWeaponHammerProjectile
Definition: gameclient.h:702
IGraphics::CTextureHandle m_aSpritePickupWeapons[6]
Definition: gameclient.h:729
IGraphics::CTextureHandle m_SpriteWeaponGunCursor
Definition: gameclient.h:672
IGraphics::CTextureHandle m_aSpriteStars[3]
Definition: gameclient.h:696
IGraphics::CTextureHandle m_SpriteWeaponGunProjectile
Definition: gameclient.h:699
IGraphics::CTextureHandle m_SpritePickupNinja
Definition: gameclient.h:725
Definition: gameclient.h:776
IGraphics::CTextureHandle m_SpriteHudEndlessJump
Definition: gameclient.h:781
IGraphics::CTextureHandle m_SpriteHudTeam0Mode
Definition: gameclient.h:805
IGraphics::CTextureHandle m_SpriteHudLaserHitDisabled
Definition: gameclient.h:796
IGraphics::CTextureHandle m_SpriteHudFreezeBarFullLeft
Definition: gameclient.h:784
IGraphics::CTextureHandle m_SpriteHudNinjaBarEmptyRight
Definition: gameclient.h:791
IGraphics::CTextureHandle m_SpriteHudFreezeBarEmptyRight
Definition: gameclient.h:787
IGraphics::CTextureHandle m_SpriteHudAirjumpEmpty
Definition: gameclient.h:778
IGraphics::CTextureHandle m_SpriteHudTeleportGun
Definition: gameclient.h:801
IGraphics::CTextureHandle m_SpriteHudGunHitDisabled
Definition: gameclient.h:797
IGraphics::CTextureHandle m_SpriteHudJetpack
Definition: gameclient.h:783
IGraphics::CTextureHandle m_SpriteHudCollisionDisabled
Definition: gameclient.h:780
IGraphics::CTextureHandle m_SpriteHudNinjaBarEmpty
Definition: gameclient.h:790
IGraphics::CTextureHandle m_SpriteHudEndlessHook
Definition: gameclient.h:782
IGraphics::CTextureHandle m_SpriteHudFreezeBarEmpty
Definition: gameclient.h:786
IGraphics::CTextureHandle m_SpriteHudNinjaBarFullLeft
Definition: gameclient.h:788
IGraphics::CTextureHandle m_SpriteHudDummyHammer
Definition: gameclient.h:806
IGraphics::CTextureHandle m_SpriteHudDummyCopy
Definition: gameclient.h:807
IGraphics::CTextureHandle m_SpriteHudLiveFrozen
Definition: gameclient.h:799
IGraphics::CTextureHandle m_SpriteHudAirjump
Definition: gameclient.h:777
IGraphics::CTextureHandle m_SpriteHudHookHitDisabled
Definition: gameclient.h:792
IGraphics::CTextureHandle m_SpriteHudShotgunHitDisabled
Definition: gameclient.h:794
IGraphics::CTextureHandle m_SpriteHudLockMode
Definition: gameclient.h:804
IGraphics::CTextureHandle m_SpriteHudSolo
Definition: gameclient.h:779
IGraphics::CTextureHandle m_SpriteHudDeepFrozen
Definition: gameclient.h:798
IGraphics::CTextureHandle m_SpriteHudHammerHitDisabled
Definition: gameclient.h:793
IGraphics::CTextureHandle m_SpriteHudFreezeBarFull
Definition: gameclient.h:785
IGraphics::CTextureHandle m_SpriteHudNinjaBarFull
Definition: gameclient.h:789
IGraphics::CTextureHandle m_SpriteHudPracticeMode
Definition: gameclient.h:803
IGraphics::CTextureHandle m_SpriteHudTeleportGrenade
Definition: gameclient.h:800
IGraphics::CTextureHandle m_SpriteHudGrenadeHitDisabled
Definition: gameclient.h:795
IGraphics::CTextureHandle m_SpriteHudTeleportLaser
Definition: gameclient.h:802
Definition: gameclient.h:752
IGraphics::CTextureHandle m_SpriteParticleBall
Definition: gameclient.h:754
IGraphics::CTextureHandle m_SpriteParticleShell
Definition: gameclient.h:757
IGraphics::CTextureHandle m_SpriteParticleAirJump
Definition: gameclient.h:759
IGraphics::CTextureHandle m_SpriteParticleSmoke
Definition: gameclient.h:756
IGraphics::CTextureHandle m_SpriteParticleExpl
Definition: gameclient.h:758
IGraphics::CTextureHandle m_SpriteParticleHit
Definition: gameclient.h:760
IGraphics::CTextureHandle m_aSpriteParticleSplat[3]
Definition: gameclient.h:755
IGraphics::CTextureHandle m_aSpriteParticles[10]
Definition: gameclient.h:761
IGraphics::CTextureHandle m_SpriteParticleSlice
Definition: gameclient.h:753
Definition: gameclient.h:877
bool m_IsInit
Definition: gameclient.h:879
bool m_Teleported
Definition: gameclient.h:880
float m_aLastFreeze[MAX_CLIENTS]
Definition: gameclient.h:886
bool m_Solo
Definition: gameclient.h:878
vec2 m_OldPos
Definition: gameclient.h:882
int m_OldPersonalZoom
Definition: gameclient.h:883
float m_SecondChance
Definition: gameclient.h:884
bool m_aVanish[MAX_CLIENTS]
Definition: gameclient.h:881
float m_OldCameraDistance
Definition: gameclient.h:885
Definition: protocol.h:455
Definition: protocol.h:513
Definition: protocol.h:661
Definition: protocol.h:405
Definition: protocol.h:426
Definition: protocol.h:413
int m_GameFlags
Definition: protocol.h:415
Definition: protocol.h:467
Definition: protocol.h:360
Definition: protocol.h:499
Definition: protocol7.h:394