DDNet documentation
Loading...
Searching...
No Matches
scoreboard.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_SCOREBOARD_H
4#define GAME_CLIENT_COMPONENTS_SCOREBOARD_H
5
6#include <engine/console.h>
7#include <engine/graphics.h>
8
10#include <game/client/ui.h>
11#include <game/client/ui_rect.h>
12
13class CScoreboard : public CComponent
14{
24
25 void RenderTitleScore(CUIRect ScoreLabel, int Team, float TitleFontSize);
26 void RenderTitle(CUIRect TitleLabel, int Team, const char *pTitle, float TitleFontSize);
27 void RenderTitleBar(CUIRect TitleBar, int Team, const char *pTitle);
28 void RenderGoals(CUIRect Goals);
29 void RenderSpectators(CUIRect Spectators);
30 void RenderScoreboard(CUIRect Scoreboard, int Team, int CountStart, int CountEnd, CScoreboardRenderState &State);
31 void RenderRecordingNotification(float x);
32
33 static void ConKeyScoreboard(IConsole::IResult *pResult, void *pUserData);
34 static void ConToggleScoreboardCursor(IConsole::IResult *pResult, void *pUserData);
35
36 const char *GetTeamName(int Team) const;
37
39
41
42 std::optional<vec2> m_LastMousePos;
43 bool m_MouseUnlocked = false;
44
45 void SetUiMousePos(vec2 Pos);
46 void LockMouse();
47
64
66 {
67 public:
69
71
72 static CUi::EPopupMenuFunctionResult Render(void *pContext, CUIRect View, bool Active);
75
90
97
98 void ResetTexts();
99
100public:
101 CScoreboard();
102 int Sizeof() const override { return sizeof(*this); }
103 void OnConsoleInit() override;
104 void OnInit() override;
105 void OnReset() override;
106 void OnShutdown() override;
107 void OnWindowResize() override;
108 void OnRender() override;
109 void OnRelease() override;
110 bool OnCursorMove(float x, float y, IInput::ECursorType CursorType) override;
111 bool OnInput(const IInput::CEvent &Event) override;
112
113 bool IsActive() const;
114};
115
116#endif
Definition ui.h:269
Definition ui.h:312
Definition component.h:165
Definition scoreboard.h:66
float m_FontSize
Definition scoreboard.h:70
CScoreboard * m_pScoreboard
Definition scoreboard.h:68
static CUi::EPopupMenuFunctionResult Render(void *pContext, CUIRect View, bool Active)
Definition scoreboard.cpp:1233
Definition scoreboard.h:77
CCachedText m_Ping
Definition scoreboard.h:87
char m_SpectatorSecondLineButtonId
Definition scoreboard.h:80
CCachedText m_ReadyMark
Definition scoreboard.h:85
CCachedText m_Score
Definition scoreboard.h:82
CCachedText m_ScoreMillis
Definition scoreboard.h:83
CCachedText m_Name
Definition scoreboard.h:84
CCachedText m_Clan
Definition scoreboard.h:86
char m_PlayerButtonId
Definition scoreboard.h:79
Definition scoreboard.h:49
bool m_IsLocal
Definition scoreboard.h:59
bool m_IsSpectating
Definition scoreboard.h:60
int m_ClientId
Definition scoreboard.h:58
CButtonContainer m_SpectateButton
Definition scoreboard.h:56
CButtonContainer m_FriendAction
Definition scoreboard.h:52
CButtonContainer m_MuteAction
Definition scoreboard.h:53
CScoreboard * m_pScoreboard
Definition scoreboard.h:51
CButtonContainer m_EmoticonAction
Definition scoreboard.h:54
static CUi::EPopupMenuFunctionResult Render(void *pContext, CUIRect View, bool Active)
Definition scoreboard.cpp:1124
static void ConToggleScoreboardCursor(IConsole::IResult *pResult, void *pUserData)
Definition scoreboard.cpp:67
CCachedText m_HeadlineName
Definition scoreboard.h:94
void RenderTitleBar(CUIRect TitleBar, int Team, const char *pTitle)
Definition scoreboard.cpp:264
IGraphics::CTextureHandle m_DeadTeeTexture
Definition scoreboard.h:40
void OnInit() override
Definition scoreboard.cpp:107
bool OnInput(const IInput::CEvent &Event) override
Definition scoreboard.cpp:169
std::optional< vec2 > m_LastMousePos
Definition scoreboard.h:42
CCachedText m_TitleScore
Definition scoreboard.h:91
void OnRelease() override
Definition scoreboard.cpp:148
void RenderSpectators(CUIRect Spectators)
Definition scoreboard.cpp:319
bool m_Active
Definition scoreboard.h:38
void RenderTitleScore(CUIRect ScoreLabel, int Team, float TitleFontSize)
Definition scoreboard.cpp:214
CPlayerElement m_aPlayers[MAX_CLIENTS]
Definition scoreboard.h:89
int Sizeof() const override
Definition scoreboard.h:102
void OnConsoleInit() override
Definition scoreboard.cpp:101
void OnReset() override
Definition scoreboard.cpp:112
void LockMouse()
Definition scoreboard.cpp:44
CScoreboard()
Definition scoreboard.cpp:29
void RenderRecordingNotification(float x)
Definition scoreboard.cpp:851
CCachedText m_HeadlinePing
Definition scoreboard.h:96
CScoreboard::CScoreboardPopupContext m_ScoreboardPopupContext
bool m_MouseUnlocked
Definition scoreboard.h:43
char m_MapTitleButtonId
Definition scoreboard.h:74
void RenderScoreboard(CUIRect Scoreboard, int Team, int CountStart, int CountEnd, CScoreboardRenderState &State)
Definition scoreboard.cpp:468
void RenderGoals(CUIRect Goals)
Definition scoreboard.cpp:291
static void ConKeyScoreboard(IConsole::IResult *pResult, void *pUserData)
Definition scoreboard.cpp:52
bool OnCursorMove(float x, float y, IInput::ECursorType CursorType) override
Definition scoreboard.cpp:158
void SetUiMousePos(vec2 Pos)
Definition scoreboard.cpp:34
void OnShutdown() override
Definition scoreboard.cpp:138
CScoreboard::CMapTitlePopupContext m_MapTitlePopupContext
void OnRender() override
Definition scoreboard.cpp:891
void ResetTexts()
Definition scoreboard.cpp:119
CCachedText m_TitleScoreMillis
Definition scoreboard.h:92
bool IsActive() const
Definition scoreboard.cpp:1068
CCachedText m_HeadlineScore
Definition scoreboard.h:93
CCachedText m_HeadlineClan
Definition scoreboard.h:95
void RenderTitle(CUIRect TitleLabel, int Team, const char *pTitle, float TitleFontSize)
Definition scoreboard.cpp:180
void OnWindowResize() override
Definition scoreboard.cpp:143
const char * GetTeamName(int Team) const
Definition scoreboard.cpp:1093
Definition ui_rect.h:12
EPopupMenuFunctionResult
Definition ui.h:342
Definition console.h:66
Definition graphics.h:258
Definition input.h:22
ECursorType
Definition input.h:42
@ MAX_CLIENTS
Definition protocol.h:89
float m_TeamStartY
Definition scoreboard.h:18
CScoreboardRenderState()
Definition scoreboard.h:21
int m_CurrentDDTeamSize
Definition scoreboard.h:19
float m_TeamStartX
Definition scoreboard.h:17
Definition ui.h:293
vector2_base< float > vec2
Definition vmath.h:168