Ejemplo n.º 1
0
void Game::handleEvent(Event& e)
{
	if(strcmp(e.getID(), "changestate") == 0)
	{
		if(strcmp(e[0].toChar(), "menu") == 0)
		{
			MenuState* pMenuState = dynamic_cast<MenuState*>(m_pStateManager->initState(new MenuState()));
			pMenuState->Initialize();

			m_pStateManager->setActiveState(pMenuState);
		}
		else if(strcmp(e[0].toChar(), "game") == 0)
		{			
			SPGameState* pGameState = dynamic_cast<SPGameState*>(m_pStateManager->initState(new SPGameState()));
			pGameState->Initialize();

			m_pStateManager->setActiveState(pGameState);
		}
		else if(strcmp(e[0].toChar(), "editor") == 0)
		{			
			EditorState* pEditorState = dynamic_cast<EditorState*>(m_pStateManager->initState(new EditorState()));
			pEditorState->Initialize();

			m_pStateManager->setActiveState(pEditorState);
		}
	}
}