Ejemplo n.º 1
0
    private void Start()
    {
        serializationManager = SerializationManager.Instance;

        if (serializationManager.CheckIfThisIsFirstStart())
        {
            gameState.IsGameInFirstStartMode = true;
            uI.firstStartInterface.SetActive(true);
        }
        else
        {
            uI.prestartInterface.SetActive(true);
        }
        components.audioPlayer.PlaySound(
            components.audioPlayer.backgroundMusic,
            components.audioPlayer.backgroundSoundAudioSource,
            0.025f,
            true
            );

        components.playerScript.GetComponent <SpriteRenderer>().sprite = sprites.FacesArray[gameState.SkinID];
        components.playerRigidbody.AddForce(transform.right * gamePreferences.gameSpeed, ForceMode2D.Force);

        spawningObjects.DrawBackgroundPart(2);
        spawningObjects.DrawGroundPart(2);
        spawningObjects.BackgroundSpawningCoroutine = StartCoroutine(spawningObjects.DrawBackground(gamePreferences.backgroundSpawningDelay));
        spawningObjects.GroundSpawningCoroutine     = StartCoroutine(spawningObjects.DrawGround(gamePreferences.groundSpawningDelay));
    }
Ejemplo n.º 2
0
    private IEnumerator FlexMode(float time, float speedCoefficient, AudioClip clip)
    {
        spawningObjects.DrawBackgroundPart(6);
        spawningObjects.DrawObstacle(6);
        spawningObjects.DrawGroundPart(6);

        gameState.IsGameInFlexMode = true;
        ChangeObstaclesSolidness(false);
        components.audioPlayer.PauseSound(components.audioPlayer.backgroundSoundAudioSource);
        components.audioPlayer.PlaySound(clip, components.audioPlayer.flexModeSoundAudioSource, 1, false);
        components.playerRigidbody.AddForce(-transform.right * gamePreferences.gameSpeed, ForceMode2D.Force);
        components.playerRigidbody.AddForce(transform.right * gamePreferences.gameSpeed * speedCoefficient, ForceMode2D.Force);
        ChangeCoroutinesSpeed(
            gamePreferences.backgroundSpawningDelay / speedCoefficient,
            gamePreferences.obstacleSpawningDelay / speedCoefficient,
            gamePreferences.groundSpawningDelay / speedCoefficient,
            gamePreferences.boosterSpawningDelay / speedCoefficient
            );
        components.glowingMaterial.StartGlowing(speedCoefficient);

        yield return(new WaitForSeconds(time));

        gameState.IsGameInFlexMode = false;
        components.audioPlayer.StopSound(components.audioPlayer.flexModeSoundAudioSource);
        components.glowingMaterial.StopGlowing();
        components.audioPlayer.ResumeSound(components.audioPlayer.backgroundSoundAudioSource);
        components.playerRigidbody.AddForce(-transform.right * gamePreferences.gameSpeed * speedCoefficient, ForceMode2D.Force);
        components.playerRigidbody.AddForce(transform.right * gamePreferences.gameSpeed, ForceMode2D.Force);
        ChangeCoroutinesSpeed(
            gamePreferences.backgroundSpawningDelay,
            gamePreferences.obstacleSpawningDelay,
            gamePreferences.groundSpawningDelay,
            gamePreferences.boosterSpawningDelay
            );

        yield return(new WaitForSeconds(2f));

        if (!gameState.IsGameInFlexMode)
        {
            ChangeObstaclesSolidness(true);
        }
    }