DDraceNetwork Documentation
Loading...
Searching...
No Matches
hud.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_COMPONENTS_HUD_H
4#define GAME_CLIENT_COMPONENTS_HUD_H
5#include <engine/client.h>
7#include <engine/textrender.h>
8
9#include <generated/protocol.h>
10
12
44
45class CHud : public CComponent
46{
48
58 enum class ESpeedChange
59 {
60 NONE,
63 };
67
68 void RenderCursor();
69
70 void RenderTextInfo();
73
76
78 void RenderPlayerState(int ClientId);
79
82 void RenderDummyActions();
84
87
89 {
90 public:
93 float m_Angle = 0.0f;
94 };
96
97 void RenderGameTimer();
99 void RenderSuddenDeath();
100
101 void RenderScoreHud();
103
104 void RenderSpectatorHud();
105 void RenderWarmupTimer();
106 void RenderLocalTime(float x);
107
108 static constexpr float MOVEMENT_INFORMATION_LINE_HEIGHT = 8.0f;
109
110public:
111 CHud();
112 int Sizeof() const override { return sizeof(*this); }
113
114 void ResetHudContainers();
115 void OnWindowResize() override;
116 void OnReset() override;
117 void OnRender() override;
118 void OnInit() override;
119 void OnNewSnapshot() override;
120
121 // DDRace
122
123 void OnMessage(int MsgType, void *pRawMsg) override;
124 void RenderNinjaBarPos(float x, float y, float Width, float Height, float Progress, float Alpha = 1.0f);
125
126private:
127 void RenderRecord();
128 void RenderDDRaceEffects();
137
138 inline float GetMovementInformationBoxHeight();
139 inline int GetDigitsIndex(int Value, int Max);
140
141 // Quad Offsets
173};
174
175#endif
Definition component.h:165
Definition hud.h:89
float m_Angle
Definition hud.h:93
vec2 m_Speed
Definition hud.h:92
vec2 m_Pos
Definition hud.h:91
Definition hud.h:46
int m_ArmorOffset
Definition hud.h:145
void RenderPauseNotification()
Definition hud.cpp:160
void RenderRecord()
Definition hud.cpp:1863
void OnWindowResize() override
Definition hud.cpp:68
float m_Width
Definition hud.h:47
void RenderMovementInformation()
Definition hud.cpp:1462
int m_EmptyArmorOffset
Definition hud.h:146
int m_aAmmoOffset[NUM_WEAPONS]
Definition hud.h:142
void RenderSuddenDeath()
Definition hud.cpp:172
void RenderWarmupTimer()
Definition hud.cpp:498
void RenderConnectionWarning()
Definition hud.cpp:563
void RenderScoreHud()
Definition hud.cpp:184
float m_PlayerPrevAngle
Definition hud.h:54
void PreparePlayerStateQuads()
Definition hud.cpp:765
int m_LastSpectatorCountTick
Definition hud.h:80
int m_LockModeOffset
Definition hud.h:172
int m_HookHitDisabledOffset
Definition hud.h:160
int m_DeepFrozenOffset
Definition hud.h:166
int m_EmptyHealthOffset
Definition hud.h:144
STextContainerIndex m_aPlayerSpeedTextContainers[2]
Definition hud.h:55
void OnInit() override
Definition hud.cpp:92
void RenderDDRaceEffects()
Definition hud.cpp:1768
int m_HammerHitDisabledOffset
Definition hud.h:161
CHud()
Definition hud.cpp:27
void RenderMovementInformationTextContainer(STextContainerIndex &TextContainer, const ColorRGBA &Color, float X, float Y)
Definition hud.cpp:1403
int m_aWeaponOffset[NUM_WEAPONS]
Definition hud.h:151
int m_DummyHammerOffset
Definition hud.h:168
void RenderDummyActions()
Definition hud.cpp:1314
float m_ServerRecord
Definition hud.h:130
void UpdateMovementInformationTextContainer(STextContainerIndex &TextContainer, float FontSize, float Value, float &PrevValue)
Definition hud.cpp:1388
float m_aPlayerRecord[NUM_DUMMIES]
Definition hud.h:131
int m_DummyCopyOffset
Definition hud.h:169
void OnRender() override
Definition hud.cpp:1651
int m_LaserHitDisabledOffset
Definition hud.h:165
float m_TimeCpDiff
Definition hud.h:129
void OnNewSnapshot() override
Definition hud.cpp:1605
int m_DDRaceTime
Definition hud.h:133
int m_TeleportGrenadeOffset
Definition hud.h:155
void ResetHudContainers()
Definition hud.cpp:43
STextContainerIndex m_FPSTextContainerIndex
Definition hud.h:51
class CMovementInformation GetMovementInformation(int ClientId, int Conn) const
Definition hud.cpp:1411
int m_FinishTimeLastReceivedTick
Definition hud.h:134
STextContainerIndex m_PlayerAngleTextContainerIndex
Definition hud.h:53
void RenderCursor()
Definition hud.cpp:593
int m_FlagOffset
Definition hud.h:148
void RenderNinjaBarPos(float x, float y, float Width, float Height, float Progress, float Alpha=1.0f)
Definition hud.cpp:1091
ESpeedChange
Definition hud.h:59
void RenderGameTimer()
Definition hud.cpp:118
float GetMovementInformationBoxHeight()
Definition hud.cpp:1376
int m_LiveFrozenOffset
Definition hud.h:167
int m_EndlessHookOffset
Definition hud.h:153
SScoreInfo m_aScoreInfo[2]
Definition hud.h:50
float m_Height
Definition hud.h:47
float m_FinishTimeDiff
Definition hud.h:132
int m_aPlayerSpeed[2]
Definition hud.h:57
int m_SoloOffset
Definition hud.h:158
int m_ShotgunHitDisabledOffset
Definition hud.h:163
int m_Team0ModeOffset
Definition hud.h:171
STextContainerIndex m_DDRaceEffectsTextContainerIndex
Definition hud.h:52
void OnMessage(int MsgType, void *pRawMsg) override
Definition hud.cpp:1722
void RenderAmmoHealthAndArmor(const CNetObj_Character *pCharacter)
Definition hud.cpp:712
int m_AirjumpOffset
Definition hud.h:149
int Sizeof() const override
Definition hud.h:112
float m_aPlayerPrevPosition[2]
Definition hud.h:66
int m_TeleportGunOffset
Definition hud.h:156
void RenderTextInfo()
Definition hud.cpp:518
void RenderSpectatorCount()
Definition hud.cpp:1242
void OnReset() override
Definition hud.cpp:73
int m_TimeCpLastReceivedTick
Definition hud.h:135
float m_aPlayerPrevSpeed[2]
Definition hud.h:56
int GetDigitsIndex(int Value, int Max)
Definition hud.cpp:1358
int m_EndlessJumpOffset
Definition hud.h:152
int m_LastLocalClientId
Definition hud.h:102
int m_JetpackOffset
Definition hud.h:154
int m_GunHitDisabledOffset
Definition hud.h:162
int m_HudQuadContainerIndex
Definition hud.h:49
void RenderTeambalanceWarning()
Definition hud.cpp:573
static constexpr float MOVEMENT_INFORMATION_LINE_HEIGHT
Definition hud.h:108
int m_HealthOffset
Definition hud.h:143
int m_aCursorOffset[NUM_WEAPONS]
Definition hud.h:147
int m_PracticeModeOffset
Definition hud.h:170
void RenderSpectatorHud()
Definition hud.cpp:1544
void RenderLocalTime(float x)
Definition hud.cpp:1591
int m_CollisionDisabledOffset
Definition hud.h:159
int m_AirjumpEmptyOffset
Definition hud.h:150
STextContainerIndex m_aPlayerPositionContainers[2]
Definition hud.h:65
int m_TeleportLaserOffset
Definition hud.h:157
void RenderPlayerState(int ClientId)
Definition hud.cpp:824
bool m_ShowFinishTime
Definition hud.h:136
void PrepareAmmoHealthAndArmorQuads()
Definition hud.cpp:640
int m_GrenadeHitDisabledOffset
Definition hud.h:164
ESpeedChange m_aLastPlayerSpeedChange[2]
Definition hud.h:64
Definition color.h:198
Definition vmath.h:15
@ NUM_DUMMIES
Definition enums.h:8
@ MAX_NAME_LENGTH
Definition protocol.h:98
@ NUM_WEAPONS
Definition protocol.h:1490
Definition protocol.h:497
Definition hud.h:14
char m_aScoreText[16]
Definition hud.h:36
char m_aPlayerNameText[MAX_NAME_LENGTH]
Definition hud.h:38
SScoreInfo()
Definition hud.h:15
bool m_Initialized
Definition hud.h:42
STextContainerIndex m_OptionalNameTextContainerIndex
Definition hud.h:40
STextContainerIndex m_TextScoreContainerIndex
Definition hud.h:34
STextContainerIndex m_TextRankContainerIndex
Definition hud.h:33
void Reset()
Definition hud.h:20
char m_aRankText[16]
Definition hud.h:37
float m_ScoreTextWidth
Definition hud.h:35
int m_RoundRectQuadContainerIndex
Definition hud.h:39
Definition textrender.h:261
void Reset()
Definition textrender.h:268