CSC8503_Advanced_Game_Technologies / CSC8503 / CSC8503Common / MainMenuState.cpp
MainMenuState.cpp
Raw
#include "MainMenuState.h"
#include "SingleplayerGameState.h"
//#include "MultiplayerGameState.h"
#include "MainMenuMultiSelectAIState.h"

void MainMenuState::OnAwake() {
}


void MainMenuState::OnSleep() {
}

PushdownState::PushdownResult MainMenuState::OnUpdate(float dt, PushdownState** pushFunc) {
	mainMenu->UpdateMainMenu(dt);

	if (Window::GetKeyboard()->KeyPressed(KeyboardKeys::RETURN)) {
		switch (mainMenu->GetSelected()) {
		case MainMenuOption::Singleplayer: {
			*pushFunc = new SingleplayerGameState();
			return PushdownState::PushdownResult::Push;
		}
		case MainMenuOption::Multiplayer: {
			//*pushFunc = new MultiplayerGameState();
			*pushFunc = new MainMenuMultiSelectAIState();
			return PushdownState::PushdownResult::Push; // TO:DO
		}
		case MainMenuOption::Quit: {
			return PushdownState::PushdownResult::Pop;
		}
		}
	}
	if (Window::GetKeyboard()->KeyPressed(KeyboardKeys::ESCAPE)) {
		return PushdownState::PushdownResult::Pop;
	}

	return PushdownState::PushdownResult::NoChange;
}