Beispiel #1
0
 /*/ Sets game to inactive, while level completed, sets new player score and shows game result /*/
 private void CompleteLevel()
 {
     gameIsActive = false;
     playerBehaviour.AddToPlayerScore(finishMeters[currentLevel]);
     playerBehaviour.SubtractPlayerScore((TimeCounter.TotalTime() * penaltyMultiplierForTime[currentLevel]));
     currentLevel++;
     if (currentLevel < finishMeters.Length)
     {
         levelComplete.SetActive(true);
         if (PlayerBehaviour.coinsCollected == 0)
         {
             playerScore.text = "Current Score: " + PlayerBehaviour.totalScore.ToString();
         }
         else
         {
             int bonus = MoneyBehaviour.coinMultiplier * PlayerBehaviour.coinsCollected;
             playerScore.text = "Current Score: " + PlayerBehaviour.totalScore.ToString() + "\n      Bonus for coins: " + bonus + "   Total: " + (PlayerBehaviour.totalScore + bonus).ToString();
             playerBehaviour.AddToPlayerScore(bonus);
         }
         Invoke("Restart", 5.0f);
     }
     else
     {
         gameComplete.SetActive(true);
         int bonus = MoneyBehaviour.coinMultiplier * PlayerBehaviour.coinsCollected;
         finishText.text = "Final Score: " + PlayerBehaviour.totalScore.ToString() + "\n      Bonus for coins: " + bonus + "   Total: " + (PlayerBehaviour.totalScore + bonus).ToString();
         playerBehaviour.AddToPlayerScore(bonus);
     }
 }
Beispiel #2
0
 private void OnCollisionEnter(Collision collision)
 {
     if (GameObject.FindGameObjectWithTag("RoadBridge") != null && collision.collider.tag == "BridgeBound" && enemyExplosionOnCollisionWithBridge == true)
     {
         CreateExplosion();
         EnemyGenerator.enemyCounter--;
         Destroy(gameObject);
     }
     if (collision.collider.tag == "Player" && playerBehaviour.IsImmune() == true)
     {
         CreateExplosion();
         EnemyGenerator.enemyCounter--;
         FloatingText.ShowMessage("+100 points", playerTransform.position + new Vector3(0, 0, -1));
         playerBehaviour.AddToPlayerScore(100);
         Debug.Log("aaa");
         Destroy(gameObject);
     }
     if (collision.collider.tag == ("Player") || collision.collider.tag == ("Enemy"))
     {
         collisionWithCar = true;
     }
 }
    /*/ If enemy get's hit => kaboom /*/
    private void OnTriggerEnter(Collider collider)
    {
        if (collider.tag == "Enemy" && (collider.name != "CashCar" && collider.name != "ColourCar"))
        {
            GameObject go;
            go = Instantiate(explosion) as GameObject;
            go.transform.position = collider.transform.position;
            FloatingText.ShowMessage("+100 points", playerTransform.position + new Vector3(0, 0, -1));
            playerBehaviour.AddToPlayerScore(100);

            Destroy(collider.gameObject);
            Destroy(gameObject);
            EnemyGenerator.enemyCounter--;
        }
        if (collider.name == "CashCar")
        {
            GameObject go;
            go = Instantiate(explosion) as GameObject;
            go.transform.position = collider.transform.position;
            FloatingText.ShowMessage("+ " + SpecialCarScript.cashForSpecialCar + " Points", playerTransform.position + new Vector3(0, 0, -1));
            PlayerBehaviour.totalScore += SpecialCarScript.cashForSpecialCar;
            Destroy(collider.gameObject);
            Destroy(gameObject);
            EnemyGenerator.enemyCounter--;
        }
        if (collider.name == "ColourCar")
        {
            GameObject go;
            go = Instantiate(explosion) as GameObject;
            go.transform.position = collider.transform.position;
            int bonus = Random.Range(1, SpecialCarScript.cashForSpecialCar + 1);
            FloatingText.ShowMessage("+ " + bonus + " Points", playerTransform.position + new Vector3(0, 0, -1));
            PlayerBehaviour.totalScore += bonus;
            Destroy(collider.gameObject);
            Destroy(gameObject);
            EnemyGenerator.enemyCounter--;
        }
    }