void MenuState::handleMessage(const xy::Message& msg) { m_scene.forwardMessage(msg); m_helpScene.forwardMessage(msg); if (msg.id == MessageID::MenuMessage) { const auto& data = msg.getData<MenuEvent>(); if (data.action == MenuEvent::HelpButtonClicked) { showHelpMenu(); } } }
int startMenu() { int choice; do { choice = showMainMenu(); if(choice == MENU_MAP) { int map = showMapMenu(); play(map); } else if(choice == MENU_HELP) { showHelpMenu(); } } while(choice != MENU_EXIT); return 0; }