35 lines
812 B
C++
35 lines
812 B
C++
#pragma once
|
|
|
|
#include <Nazara/Widgets/ButtonWidget.hpp>
|
|
#include <client/states/AbstractState.h>
|
|
#include <client/states/ImGuiDrawer.h>
|
|
|
|
namespace blitz {
|
|
namespace client {
|
|
|
|
class MainMenuState : public AbstractState, private ImGuiDrawer {
|
|
public:
|
|
MainMenuState(std::shared_ptr<StateData>);
|
|
~MainMenuState();
|
|
|
|
private:
|
|
Nz::ButtonWidget* m_JoinServerButton;
|
|
Nz::ButtonWidget* m_CreateServerButton;
|
|
Nz::ButtonWidget* m_OptionButton;
|
|
Nz::ButtonWidget* m_QuitButton;
|
|
std::shared_ptr<AbstractState> m_NextState;
|
|
|
|
void LayoutWidgets() override;
|
|
bool Update(Nz::StateMachine& fsm, Nz::Time elapsedTime) override;
|
|
|
|
void OnRenderImgui() override;
|
|
|
|
void OnJoinServerPressed();
|
|
void OnCreateServerPressed();
|
|
void OnOptionPressed();
|
|
void OnQuitPressed();
|
|
};
|
|
|
|
} // namespace client
|
|
} // namespace blitz
|