コード例 #1
0
    void QTEStop(bool wasCaught)
    {
        qteGraphics.SetActive(false);
        if (wasCaught)                                                             // Jeśli gracz przegrał QTE wyświetla się ekran Game Over z wynikiem i przyciskami menu i restartu
        {
            int newPoints = PlayerPrefs.GetInt("Points") + (int)player.scoreValue; // Sumowanie wyniku do ogólnej liczby punktów
            PlayerPrefs.SetInt("Money", PlayerPrefs.GetInt("Money") + player.collectMoney);
            PlayerPrefs.SetInt("Points", newPoints);                               // Ustawianie nowej liczby punktów
            isGameOver = true;
            settings.odegrajDzwiek(gameOverSound);
            if (player.isHighscore == true)             //	Ustawianie nowego rekordu
            {
                PlayerPrefs.SetInt("Highscore", (int)player.scoreValue);
                player.isHighscore = false;
            }
            player.scoreText.gameObject.SetActive(false);
            scoreGameOverText.text = "Twój wynik : " + (int)player.scoreValue;
            highscoreText.text     = "Najlepszy wynik : " + PlayerPrefs.GetInt("Highscore");
            gameOverCanvas.SetActive(true);
        }

        else if (!wasCaught)         // Jeśli gracz wygrał qTE biegnie dalej a tłum się odsuwa
        {
            settings.movementPause = false;
            settings.spawnerPause  = false;
            player.scoreText.gameObject.SetActive(true);
            player.slip = 3;
            qteSpeed   += qteSpeedRaise;
            gameCanvas.SetActive(true);
        }
        gameObject.SetActive(false);
    }
コード例 #2
0
    // Update is called once per frame
    void LateUpdate()
    {
        if (myRigidbody.velocity.y < 0)          //	Włączanie odpowiedniej animacji skoku na podstawie kierunku lotu
        {
            gAnim.SetBool("JumpDown", true);
            gAnim.SetBool("JumpUp", false);
        }
        if (!settings.movementPause)            //	Sprawdzanie, czy gra nie została spauzowana
        {
            if (upgradeEnabled[1])              //	Sprawdzanie, czy ulepszenie Super Mocy jest aktywne
            {
                SuperPower();
            }

            if (upgradeEnabled[0])             //	Poniżej wypełnianie ikony podwójnego skoku na podstawie ilości dostępnych skoków
            {
                doubleJumpText.fillAmount = (float)jumps / 2;
            }

            if (slip == 0)             // Jeśli gracz potknął się 3 razy uruchamia się QTE
            {
                gAnim.SetBool("Caught", true);
                qteCanvas.SetActive(true);
            }
            else
            {
                gAnim.SetBool("Caught", false);
                scoreValue     = Vector3.Distance(transform.parent.position, crowd.position); // Wynik jest to dystans jaki pokonał gracz od punktu startowego
                scoreText.text = "Wynik: " + Mathf.Round(scoreValue);
                //	Poniżej informacja o pobiciu rekordu
                if ((scoreValue > PlayerPrefs.GetInt("Highscore")) && (isHighscore == false))
                {
                    newRecordAnim.SetTrigger("NewRecord");
                    isHighscore = true;
                    settings.odegrajDzwiek(highscoreSound);
                    scoreText.color = Color.green;
                }
            }
            HandleMovement();
        }
    }