// ----------------------------------------------------------------
// From Game Programming in C++ by Sanjay Madhav
// Copyright (C) 2017 Sanjay Madhav. All rights reserved.
//
// Released under the BSD License
// See LICENSE in root directory for full details.
// ----------------------------------------------------------------
#include "PauseMenu.h"
#include "Game.h"
#include "DialogBox.h"
#include
PauseMenu::PauseMenu(Game* game)
:UIScreen(game)
{
mGame->SetState(Game::EPaused);
SetRelativeMouseMode(false);
SetTitle("PauseTitle");
AddButton("ResumeButton", [this]() {
Close();
});
AddButton("QuitButton", [this]() {
new DialogBox(mGame, "QuitText",
[this]() {
mGame->SetState(Game::EQuit);
});
});
}
PauseMenu::~PauseMenu()
{
SetRelativeMouseMode(true);
mGame->SetState(Game::EGameplay);
}
void PauseMenu::HandleKeyPress(int key)
{
UIScreen::HandleKeyPress(key);
if (key == SDLK_ESCAPE)
{
Close();
}
}