18 #ifndef INC_C4GameLobby
19 #define INC_C4GameLobby
36 int32_t iCountdown{
Abort};
87 enum CountdownState { CDS_None=0, CDS_LongCountdown=1, CDS_Countdown=2, CDS_Start=3 } eCountdownState;
88 int32_t iBackBufferIndex;
91 enum { SheetIdx_PlayerList = 0, SheetIdx_Res = 1, SheetIdx_Options = 2, SheetIdx_Scenario = 3 };
132 void SetCountdownState(CountdownState eToState, int32_t iTimer);
133 int32_t ValidatedCountdownTime(int32_t iTimeout);
135 void UpdatePlayerList();
148 void OnError(
const char *szErrMsg);
157 void Start(int32_t iCountdownTime);
C4PacketCountdown(int32_t iaCountdown)
C4PacketCountdown()=default
StdStrBuf GetCountdownMsg(bool fInitialMsg=false) const
void CompileFunc(StdCompiler *pComp) override
int32_t GetCountdown() const
C4PacketSetScenarioParameter(const char *id, int32_t v)
void CompileFunc(StdCompiler *pComp) override
const char * GetID() const
C4PacketSetScenarioParameter()=default
void OnSec1Timer() override
Countdown(int32_t iStartTimer)
void OnTabOptions(C4GUI::Control *btn)
bool KeyHistoryUpDown(bool fUp)
void Start(int32_t iCountdownTime)
void OnClientPart(C4Client *pPartClient)
void OnBtnChat(C4GUI::Control *btn)
void OnCtxTabOptions(C4GUI::Element *pListItem)
void OnTabRes(C4GUI::Control *btn)
void OnTabPlayers(C4GUI::Control *btn)
void OnClientJoin(C4Client *pNewClient)
void OnCtxTabRes(C4GUI::Element *pListItem)
void OnReadyCheck(C4GUI::Element *pCheckBox)
void OnSec1Timer() override
void OnCtxTabScenario(C4GUI::Element *pListItem)
void OnTabTeams(C4GUI::Control *btn)
void OnClientSound(C4Client *pOfClient)
void OnTabScenario(C4GUI::Control *btn)
bool OnMessage(C4Client *pOfClient, const char *szMessage)
void OnCtxTabTeams(C4GUI::Element *pListItem)
C4GUI::ContextMenu * OnRightTabContext(C4GUI::Element *pLabel, int32_t iX, int32_t iY)
void OnError(const char *szErrMsg)
void OnClientAddPlayer(const char *szFilename, int32_t idClient)
void HandlePacket(char cStatus, const C4PacketBase *pBasePkt, C4Network2Client *pClient)
class C4GUI::Control * GetDefaultControl() override
void OnClientConnect(C4Client *pClient, C4Network2IOConnection *pConn)
void OnClientReadyStateChange()
void OnClosed(bool fOK) override
C4GUI::Edit::InputResult OnChatInput(C4GUI::Edit *edt, bool fPasting, bool fPastingMore)
void OnExitBtn(C4GUI::Control *btn)
void OnRunBtn(C4GUI::Control *btn)
void OnCountdownPacket(const C4PacketCountdown &Pkt)
void OnLog(const char *szLogMsg, DWORD dwClr=C4GUI_LogFontClr)
void OnCtxTabPlayers(C4GUI::Element *pListItem)
void OnSec1Timer() override
ScenDesc(const C4Rect &rcBounds, bool fActive)
const char * getData() const
const int32_t AlmostStartCountdownTime
void LobbyError(const char *szErrorMsg)