- Home /
 
 
               Question by 
               Davidbillmanoy · Jun 20, 2021 at 07:23 AM · 
                countdownracing gamerace  
              
 
              Major Race Countdown Bug
Hello! I have a bug in the race countdown. The last 3 AI Cars started moving and then the countdown didn't show. Anyone can help me with that bug? Thanks!
 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.UI;
 using System;
 using UnityStandardAssets.Vehicles.Car;
 
 public class RaceManager : MonoBehaviour
 {
     public static RaceManager instance;
     
     GameObject Player;
     GameObject[] AIs;
 
     Checkpoints checkpoint;
     public int maxLaps = 1;
     public GameObject finishMenu;
     public GameObject UIScript;
     public GameObject Counter;
     public AudioSource ReadySound;
     public AudioSource GoSound;
     bool stopped = false;
     // Start is called before the first frame update
     void Start()
     {
         //maxLaps = Options.getLaps();
         Player = GameObject.FindGameObjectWithTag("Player");
 
         checkpoint = Player.GetComponent<Checkpoints>();
         AIs = GameObject.FindGameObjectsWithTag("AI");
 
         StartCoroutine(CountDown());
     }
 
     // Update is called once per frame
     void Update()
     {
         if (checkpoint.lap > maxLaps && stopped == false)
         {
             StopCar(Player);
             stopped = true;
             checkpoint.lap--;
         }
 
         foreach(GameObject AI in AIs)
         {
             if(AI.GetComponent<Checkpoints>().lap>maxLaps)
             StopCar(AI);
         }
     }
 
     IEnumerator CountDown()
     {
         Player.GetComponent<CarUserControl>().enabled = false;
         foreach (GameObject AI in AIs)
         {
             AI.GetComponent<CarAIControl>().enabled = false;
             AI.GetComponent<ResetCar>().enabled = false;
         }
 
         yield return new WaitForSeconds(0.3f);
         Counter.GetComponent<Text>().text = "3";
         Counter.SetActive(true);
 
         yield return new WaitForSeconds(1f);
         Counter.GetComponent<Text>().text = "2";
         Counter.SetActive(true);
 
         yield return new WaitForSeconds(1f);
         Counter.GetComponent<Text>().text = "1";
         Counter.SetActive(true);
 
         yield return new WaitForSeconds(1f);
         Counter.GetComponent<Text>().text = "GO";
         Counter.SetActive(true);
         Player.GetComponent<CarUserControl>().enabled = true;
         foreach (GameObject AI in AIs)
         {
             AI.GetComponent<CarAIControl>().enabled = true;
             AI.GetComponent<ResetCar>().enabled = true;
         }
 
         yield return new WaitForSeconds(1f);
         Counter.SetActive(false);
     }
 
     void StopCar(GameObject car)
     {
         if (car.GetComponent<CarUserControl>() != null)
             car.GetComponent<CarUserControl>().enabled = false;
 
         if (car.GetComponent<CarAIControl>() != null)
             car.GetComponent<CarAIControl>().enabled = false;
 
         if (car.GetComponent<ResetCar>() != null)
             car.GetComponent<ResetCar>().enabled = false;
 
         if(car.tag=="Player")
         {
             finishMenu.SetActive(true);
             UIScript.SendMessage("showFinalPos");
         }
 
     }
 
 }
 
              
               Comment
              
 
               
              Your answer
 
             Follow this Question
Related Questions
BCE0044: expecting ), found ';'. 1 Answer
How can I create a single car with different settings? 0 Answers
Countdown To Start Game 2 Answers
Check my race code please 3 Answers
advanced countdown timer help please 0 Answers