void PrepareInGameMenu() { m_inGameMenu = new InGameMenu(Device) { Visible = false }; m_inGameMenu.RestartButton.Click = (() => m_screenManager.ModalScreenOut(m_loadingScreen, async() => await LoadFieldDataAndShowField(m_field.Descriptor, true), m_inGameMenu, m_field)); m_inGameMenu.MainMenuButton.Click = (() => m_screenManager.ModalScreenOut(m_loadingScreen, async() => await SaveFieldDataAndGoToScreen(m_mainMenu), m_inGameMenu, m_field)); m_inGameMenu.LevelSelectButton.Click = (() => m_screenManager.ModalScreenOut(m_loadingScreen, async() => await SaveFieldDataAndGoToScreen(m_selectLevelMenu), m_inGameMenu, m_field)); if (m_inGameMenu.ExitButton != null) { m_inGameMenu.ExitButton.Click = (() => m_screenManager.ModalScreenOut(m_loadingScreen, async() => await SaveFieldDataAndExit(), m_inGameMenu, m_field)); } m_inGameMenu.BackButton.Click = (() => m_screenManager.ModalScreenBack(m_field, m_inGameMenu)); m_inGameMenu.AddToCanvas(m_screenCanvas); }