Exemplo n.º 1
0
 public static PauseMenuModelView CreatePauseMenuModelView(Canvas canvas)
 {
     GameObject pauseMenuPrefab = Resources.Load<GameObject>("Prefabs/UI/PauseMenuPanel");
     PauseMenuModelView modelView = UnityEngine.Object.Instantiate(pauseMenuPrefab, canvas.transform)
         .GetComponent<PauseMenuModelView>();
     return modelView;
 }
    private void HandleGamePause(object sender, EventArgs e) // обрабатываем нажатие Escape во время игры (в апдейте трека - пока прикрутил туда)
    {
        if (Time.timeScale != 0.0f)
        {
            pauseMV        = UIFactory.CreatePauseMenuModelView(canvas); // создаем менюшку паузы
            Time.timeScale = 0.0f;

            pauseMV.OnResume         += HandleResumeGame; // подписываем обработчик продолжения игры на событие OnResume
            pauseMV.OnExitToMainMenu += HandleExitToMenu;
        }
        else
        {
            HandleResumeGame(null, EventArgs.Empty);  // позволяет отключить меню паузы, нажав esc еще раз
        }
    }