Ejemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        //ゲームが始まっているなら実行
        if (cursorController.StartCheckGet() == true)
        {
            //キャンセルボタンが押され、pouseFlagがfalse(ポーズ中ではない)ならポーズ画面を開く
            if (Input.GetButtonDown("Cancel") && pouseFlag == false)
            {
                pouseFlag      = true;
                Time.timeScale = 0;
                cursorController.CursorBoolSet(false);
                backImage.SetActive(true);
                pauseButtons.SetActive(true);
            }

            //キャンセルボタンが押され、タイムスケールが0(止まっている)ならポーズ画面を閉じる
            else if (Input.GetButtonDown("Cancel") && pouseFlag == true)
            {
                pouseFlag      = false;
                Time.timeScale = 1;
                cursorController.CursorBoolSet(true);
                backImage.SetActive(false);
                pauseButtons.SetActive(false);
            }
        }

        //プレイヤーが死んだならゲームオーバー画面を開く
        if (player.Death == true)
        {
            if (Time.timeScale != 0)
            {
                Time.timeScale = 0;
            }
            cursorController.CursorBoolSet(false);
            backImage.SetActive(true);
            gameOverButtons.SetActive(true);
        }

        //クリア条件を満たしたならクリア画面を開く
        if (player.Clear == true)
        {
            if (Time.timeScale != 0)
            {
                Time.timeScale = 0;
            }
            cursorController.CursorBoolSet(false);
            backImage.SetActive(true);
            clearButtons.SetActive(true);
            StageFlags.instance.FlagTrue(StageID);
            StageFlags.instance.FileSave();
        }
    }