Esempio n. 1
0
 private void DestroyStartingTile(int time)
 {
     StartCoroutine(EndlessRunnerGameManager.Wait(time, () =>
     {
         Destroy(startingEnvironmentTile);
     }));
 }
Esempio n. 2
0
 private void CheckInputs()
 {
     if (_endPosition.magnitude > 50)
     {
         var x = _endPosition.x;
         if (Mathf.Abs(x) > Mathf.Abs(_endPosition.y))
         {
             if (x < 0)
             {
                 EndlessRunnerGameManager.instance.player.MoveLeft();
                 #if UNITY_EDITOR
                 EndlessRunnerGameManager.DisplayDebugMessage("Swiped left");
                 #endif
             }
             else
             {
                 EndlessRunnerGameManager.instance.player.MoveRight();
                 #if UNITY_EDITOR
                 EndlessRunnerGameManager.DisplayDebugMessage("Swiped Right");
                 #endif
             }
         }
         Reset();
     }
 }
Esempio n. 3
0
 private void CreateNewEnvironmentTileWithObjectPooling(Vector3 position)
 {
     _activeEnvironmentTile = ObjectPooling.ReturnObjectFromPool(0, position, Quaternion.identity);
     _activeEnvironmentTile.GetComponent <EnvironmentTileContentManager>().CreatePickupsAndEnemies();
     #if UNITY_EDITOR
     EndlessRunnerGameManager.DisplayDebugMessage("New environment tile enabled from object pool.");
     #endif
 }
    public static void SetHighScore(int newScore)
    {
        PlayerPrefs.SetInt(HighScoreId, newScore);

        #if UNITY_EDITOR
        EndlessRunnerGameManager.DisplayDebugMessage("New high score set: " + newScore);
        #endif
    }
Esempio n. 5
0
 //Unused method. Demonstration only. Using this method would require a different way of removing past environments and generates a lot of garbage. Object pooling is optimal.
 private void CreateNewEnvironmentTile(Vector3 position)
 {
     _activeEnvironmentTile = Instantiate(environmentPrefab, position, Quaternion.identity, gameObject.transform);
     _activeEnvironmentTile.GetComponent <EnvironmentTileContentManager>().CreatePickupsAndEnemies();
     #if UNITY_EDITOR
     EndlessRunnerGameManager.DisplayDebugMessage("New environment tile instantiated.");
     #endif
 }
Esempio n. 6
0
 public void ResetWorldPositionToZero()
 {
     ParentEnvironmentTileToPlayer(true);
     ResetPlayerPosition();
     ParentEnvironmentTileToPlayer(false);
     #if UNITY_EDITOR
     EndlessRunnerGameManager.DisplayDebugMessage("World position has been reset to 0.");
     #endif
 }
Esempio n. 7
0
 private void AwardPickup()
 {
     EndlessRunnerGameManager.instance.PickupCollision(ScoreValue);
     EnableParticle(true);
     StartCoroutine(EndlessRunnerGameManager.Wait(_waitTime, () =>
     {
         EnableParticle(false);
         gameObject.SetActive(false);
     }));
 }
Esempio n. 8
0
 public Lane ReturnLaneToTheRight(int currentLaneIndex)
 {
     if (currentLaneIndex >= lanes.Length - 1)
     {
         #if UNITY_EDITOR
         EndlessRunnerGameManager.DisplayDebugMessage("You are in the left most lane, Lane: " + currentLaneIndex);
         #endif
         EndlessRunnerGameManager.instance.audioManager.PlayInvalidLaneNoise();
         return(lanes[currentLaneIndex]);
     }
     return(lanes[currentLaneIndex + 1]);
 }
 public static int ReturnHighScore()
 {
     if (PlayerPrefs.HasKey(HighScoreId))
     {
         #if UNITY_EDITOR
         EndlessRunnerGameManager.DisplayDebugMessage("No previous high score saved.");
         #endif
         return(PlayerPrefs.GetInt(HighScoreId));
     }
     #if UNITY_EDITOR
     EndlessRunnerGameManager.DisplayDebugMessage("High score retrieval successful.");
     #endif
     return(ScoreAndTimeManager.score);
 }
Esempio n. 10
0
    private void PlaySound(AudioClip clip)
    {
        var audioSourceGameObject = ObjectPooling.ReturnObjectFromPool(3, transform.position, Quaternion.identity);
        var audioSource           = audioSourceGameObject.GetComponent <AudioSource>();

        audioSource.clip = clip;

        audioSource.Play();

        StartCoroutine(EndlessRunnerGameManager.Wait(clip.length, () =>
        {
            audioSource.clip = null;
            audioSourceGameObject.SetActive(false);
        }));
    }
Esempio n. 11
0
    public void TakeHit()
    {
        if (!shieldActive)
        {
            return;
        }
        shieldActive = false;
        ActivateShield(false);
        canBeDamaged = false;
        StartCoroutine(EndlessRunnerGameManager.FlashObject(_meshRenderer, () =>
        {
            canBeDamaged = true; //Intentionally take no damage when flashing. Seems fair.
        }));

        #if UNITY_EDITOR
        EndlessRunnerGameManager.DisplayDebugMessage("Player received damage, Shields gone!");
        #endif
    }
Esempio n. 12
0
    private void ConvertPoolListIntoQueue()
    {
        foreach (var pool in pools)
        {
            var objectPool = new Queue <GameObject>();

            for (var i = 0; i < pool.maximumActiveObjects; i++)
            {
                var temporaryVariable = Instantiate(pool.prefab);
                temporaryVariable.SetActive(false);
                objectPool.Enqueue(temporaryVariable);
            }
            if (PoolDictionary.ContainsKey(pool.index))
            {
                #if UNITY_EDITOR
                EndlessRunnerGameManager.DisplayDebugMessage("Replacing object pool " + pool.index);
                #endif
                PoolDictionary.Remove(pool.index);
            }
            PoolDictionary.Add(pool.index, objectPool);
        }
    }
Esempio n. 13
0
 private void Pause()
 {
     EndlessRunnerGameManager.Pause(true);
     EnablePauseCanvas();
 }
 private void Awake()
 {
     instance = this;
     Pause(true);
     menuManager.EnableIntroductionCanvas();
 }
Esempio n. 15
0
 private void RegisterCollision()
 {
     EndlessRunnerGameManager.instance.EnemyCollision();
     StartCoroutine(EndlessRunnerGameManager.FlashObject(_meshRenderer));
 }
Esempio n. 16
0
 private void Resume()
 {
     EndlessRunnerGameManager.Pause(false);
     EnableMainCanvas();
 }
Esempio n. 17
0
 private static void RestartButton()
 {
     EndlessRunnerGameManager.Restart();
 }