// Start is called before the first frame update void Start() { rigidbody = GetComponent <Rigidbody>(); raceTimer = FindObjectOfType <RaceTimer>(); countdown = FindObjectOfType <Countdown>(); }
// Start is called before the first frame update void Start() { raceTimer = FindObjectOfType <RaceTimer>(); text = GetComponent <TextMeshProUGUI>(); text.enabled = false; }
private void SetupElements() { if (gameType == "Competition") { timer.timerText.enabled = false; timer.oldTime.enabled = false; GameObject.FindGameObjectWithTag("BestTimeLabel").GetComponent <Text>().text = ""; } else if (gameType == "TimeTrial") { for (int i = 1; i < cars.Length; i++) { cars[i].carTransform.gameObject.SetActive(false); //Disable all but player 1 cars[i].wrongWayIndicator.SetActive(false); cars[i].lapCounter.text = ""; cars[i].movementIndicator.text = ""; } if (!File.Exists("BestTime.txt")) { File.Create("BestTime.txt"); oldTimer = null; } else { oldTimer = RaceTimer.GetOldBestTime(); } MenuManager.startFromTimeTrial = true; } }
// Update is called once per frame void FixedUpdate() { timeLeft -= Time.fixedDeltaTime; if (timeLeft > 0.0f) { text.text = "" + Mathf.CeilToInt(timeLeft); } else if (timeLeft > -goTextDuration) { if (timeLeft > -Time.fixedDeltaTime) { RaceTimer timer = FindObjectOfType <RaceTimer>(); timer.started = true; //player.enabled = true; ghostRec.enabled = true; } text.text = goText; } else { text.enabled = false; } }
// Use this for initialization void Start() { textComponent = GetComponent <Text>(); textComponent.enabled = false; if (RaceTimerObject != null) { raceTimer = RaceTimerObject.GetComponent <RaceTimer>(); } }
// Use this for initialization void Start() { player = GameObject.FindGameObjectWithTag("Player"); if (FinishUIObject != null) { finishUI = FinishUIObject.GetComponent <FinishUI>(); } if (RaceTimerObject != null) { raceTimer = RaceTimerObject.GetComponent <RaceTimer>(); } ResetPosition(); }
private void Awake() { lives = 3; Animation = GetComponent <Animator>(); rb = Player.GetComponent <Rigidbody2D>(); Timer = GameObject.Find("Timer").GetComponent <RaceTimer>(); Instructions.SetActive(true); CountDownAnimation.SetActive(false); Player.GetComponent <PacuJawiMovement>().enabled = false; Timer.enabled = false; }
private void raceButton_Click(object sender, EventArgs e) { //Trucks take starting position TruckArray[0].TrucksStartingPosition(); TruckArray[1].TrucksStartingPosition(); TruckArray[2].TrucksStartingPosition(); TruckArray[3].TrucksStartingPosition(); //disable race button till the end of the race bettingParlor.Enabled = false; //start timer RaceTimer.Start(); }
//-------------------------------------- // Initialization //-------------------------------------- void Start() { Debug.Log ("creating RaceTimer"); _Instance = this; if (TimerLabel == null) { TimerLabel = GetComponent<UnityEngine.UI.Text>(); } TimerLabel.text = GetTimeFormated (); //StartTimer(); RS_GamePlayController.Instance.OnLevelStartedAction += HandleOnLevelStartedAction; RS_GamePlayController.Instance.OnLevelFinishedAction += HandleOnLevelFinishedAction; }
private void RaceTimer_Tick(object sender, EventArgs e) { for (int i = 0; i < Data.jet.Length; i++) { Data.jet[Data.rand.Next(0, 4)].isAccelerating(); if (Data.jet[i].isAccelerating()) { RaceTimer.Stop(); RaceTimer.Enabled = false; StartRace.Enabled = true; announceWinner(i + 1); } } }
// Start is called before the first frame update void Start() { Checkpoint[] checkpoints = FindObjectsOfType <Checkpoint>(); foreach (Checkpoint cp in checkpoints) { if (cp.checkpointNumber > lastCheckpoint) { lastCheckpoint = cp.checkpointNumber; } } raceTimer = FindObjectOfType <RaceTimer>(); counter = FindObjectOfType <CheckpointCounter>(); }
public static void CheckAndSetBetterTime(RaceTimer newTime) {/* * if (newTime < timers[SceneManager.GetActiveScene().buildIndex]) * { * timers[SceneManager.GetActiveScene().buildIndex] = newTime; * } */ switch (SceneManager.GetActiveScene().buildIndex) { case 1: if (newTime < firstTime) { firstTime = newTime; } break; case 2: if (newTime < secondTime) { secondTime = newTime; } break; case 3: if (newTime < thirdTime) { thirdTime = newTime; } break; case 4: if (newTime < fourthTime) { fourthTime = newTime; } break; case 5: if (newTime < fifthTime) { fifthTime = newTime; } break; } }
//Se ha implementado un sistema de checkpoints para asegurar que las vueltas al circuito se realizan correctamente //Cuando un jugador local toca un checkpoint, se activa el siguiente, hasta llegar a la meta. //Cuando el jugador ha pasado por todos los checkpoints y toca la meta se contabiliza una vuelta private void OnTriggerEnter(Collider other) { if (other.tag == "Player" && other.GetComponent <SetupPlayer>().isLocalPlayer) { PlayerInfo playerInfo = other.GetComponent <PlayerInfo>(); SetupPlayer setupPlayer = other.GetComponent <SetupPlayer>(); RaceTimer raceTimer = other.GetComponent <RaceTimer>(); if (isGoal) { setupPlayer.CmdChangeCurrentLap(playerInfo.CurrentLap + 1); raceTimer.ResetLapTime(); } nextCheckpoint.gameObject.SetActive(true); gameObject.SetActive(false); } }
public RaceTimer ConvertToRaceTimer(string time) { int num = System.Convert.ToInt32(time); RaceTimer raceTime = new RaceTimer(); raceTime.hours = 0; raceTime.minutes = 0; raceTime.seconds = 0; while (num % 3600 == 0) { num -= 3600; raceTime.hours++; } while (num % 60 == 0) { num -= 60; raceTime.minutes++; } raceTime.seconds = num; return(raceTime); }
private void Start() { timer = gameObject.GetComponent <RaceTimer>(); if (!File.Exists("GameMode.txt")) { File.Create("GameMode.txt"); } using (StreamReader streamReader = new StreamReader("GameMode.txt")) { gameType = streamReader.ReadLine(); } for (int i = 0; i < cars.Length; i++) { UpdateLapCounter(i); cars[i].wrongWayIndicator.SetActive(false); cars[i].lastSeenCheckpoint = StartCheckpoint; } allCheckpoints = FindObjectsOfType <Checkpoint>(); CreateCircuit(); winText.enabled = false; visualTotalLaps.text = totalLaps.ToString(); SetupElements(); StopAllCoroutines(); GameObject.FindGameObjectWithTag("Music").GetComponent <MusicManager>().PlayMusic(SceneManager.GetActiveScene()); coro = StartCoroutine(CountdownTimer(3f)); }
private void RaceTimer_Tick(object sender, EventArgs e) { for (int i = 0; i <= 3; i++) { if (TruckArray[i].TruckRace()) { RaceTimer.Stop(); bettingParlor.Enabled = true; i++; MessageBox.Show("Truck " + i + " won the race"); for (int j = 0; j <= 2; j++) { PuntersArray[j].Collect(i); PuntersArray[j].ClearTheBet(); } foreach (Truck Truck in TruckArray) { Truck.TrucksStartingPosition(); } break; } } }
private void DisplayTime(RaceTimer timeToDisplay, Text textToDisplayIn, string timerType) { bool compare; if (timeToDisplay != null) { if (timerType == "New") { compare = (timeToDisplay != null); } else { compare = (timeToDisplay == null); } if (compare) { textToDisplayIn.text = $"{timeToDisplay.hours}:{timeToDisplay.minutes}:{(int)timeToDisplay.seconds}"; } } else { textToDisplayIn.text = "First time"; } }
// Start is called before the first frame update //static Dictionary<int, RaceTimer> timers = new Dictionary<int, RaceTimer>(); //Handles all timers private void Start() { using (StreamReader strm = new StreamReader("BestTime.txt")) { while (!strm.EndOfStream) { string val = strm.ReadLine(); Debug.Log("TestRace"); if (val.Contains("FirstTime")) { Debug.Log("TestRace2"); string[] first = val.Split(); firstTime = ConvertToRaceTimer(first[1]); } if (val.Contains("SecondTime")) { string[] second = val.Split(); secondTime = ConvertToRaceTimer(second[1]); } if (val.Contains("ThirdTime")) { string[] third = val.Split(); thirdTime = ConvertToRaceTimer(third[1]); } if (val.Contains("FourthTime")) { string[] fourth = val.Split(); fourthTime = ConvertToRaceTimer(fourth[1]); } if (val.Contains("FifthTime")) { string[] fifth = val.Split(); fifthTime = ConvertToRaceTimer(fifth[1]); } } } Debug.Log("TestRace3"); switch (SceneManager.GetActiveScene().buildIndex) { case 1: DisplayTime(firstTime, oldTime, "old"); break; case 2: DisplayTime(secondTime, oldTime, "old"); break; case 3: DisplayTime(thirdTime, oldTime, "old"); break; case 4: DisplayTime(fourthTime, oldTime, "old"); break; case 5: DisplayTime(fifthTime, oldTime, "old"); break; } }
void Start() { rectTransform = GetComponent <RectTransform>(); spoorManager = GetComponent <SpoorManager3D>(); okButtonRace = FindObjectOfType <OkButtonRace>(); communicationManager = FindObjectOfType <CommunicationManager>(); leaderBoard = FindObjectOfType <LeaderBoard>(); storageManager = GameObject.FindGameObjectWithTag("StorageManager"); storageManagerScript = storageManager.GetComponent <StorageManager>(); //Vraag de naam van de spelers, het aantal spelers en de mapData aan de StorageManager playerNames = new List <string>(storageManagerScript.activePlayers.Keys); aantalSpelers = playerNames.Count; mapData = storageManagerScript.mapData; //Instantieer de map en geef deze de juiste waardes map = Instantiate(mapData.mapPrefab); map.transform.position = mapData.mapPosition; map.transform.rotation = Quaternion.Euler(mapData.mapRotation); map.transform.localScale = mapData.mapScale; //Geef de juiste waardes aan de Camera mainCamera = Camera.main; mainCamera.transform.position = mapData.cameraPosition; mainCamera.transform.rotation = Quaternion.Euler(mapData.cameraRotation); mainCamera.fieldOfView = mapData.cameraFOV; //Geef de juiste waardes aan het plain plain = gameObject; plain.transform.position = mapData.planePosition; plain.transform.rotation = Quaternion.Euler(mapData.planeRotation); plain.transform.localScale = mapData.planeScale; //Geef de juiste waardes aan het spoor spoorManager.scale = mapData.absoluteScale; spoorManager.PrepareTrack(); //Geef de juiste waardes aan het light light = FindObjectOfType <Light>().gameObject; light.transform.rotation = Quaternion.Euler(mapData.lightRotation); //Voeg de mogelijke spelerkleuren toe aan een lijst orderedColorAnimationPrefabs.Add(yellowBikerPrefab); orderedColorAnimationPrefabs.Add(greenBikerPrefab); orderedColorAnimationPrefabs.Add(orangeBikerPrefab); orderedColorAnimationPrefabs.Add(pinkBikerPrefab); orderedColorAnimationPrefabs.Add(redBikerPrefab); orderedColorAnimationPrefabs.Add(blackBikerPrefab); //Instantieer alle spelers for (int index = 0; index < aantalSpelers; index++) { //Instantieer de speler en geef zijn Player script de informatie over deze speler GameObject spelerClone = Instantiate(speler, spoor.transform); Player spelerCloneFiets = spelerClone.GetComponent <Player>(); spelerCloneFiets.fietsnummer = index + 1; spelerCloneFiets.naam = playerNames[index]; spelerCloneFiets.spelerMassa = 75; playerObjects.Add(spelerClone); orderedPlayers.Add(spelerCloneFiets); //Geef de speler zijn kleur, positie en schaal playerColors.Add(playerNames[index], colorOptions[index]); GameObject playerAnimation = Instantiate(orderedColorAnimationPrefabs[index], spelerClone.transform); playerAnimation.transform.localRotation = Quaternion.Euler(playerRotation); playerAnimation.transform.localPosition = playerPosition; playerAnimation.transform.localScale = playerScale; //Activeer de fiets in de Arduino en geef hem het geselecteerde vermogen communicationManager.SendPort(4, index + 1, 1); communicationManager.SendPort(6, index + 1, storageManagerScript.activePlayers[playerNames[index]]); //Creer een subdisplay voor de speler op het leaderboard leaderBoard.InstantiateSubdisplay(); } //Instantieer de timer die aftelt naar het begin van de race timer = Instantiate(timerPrefab, FindObjectOfType <Canvas>().transform); timerScript = timer.GetComponent <RaceTimer>(); }
private void StartRace_Click(object sender, EventArgs e) { RaceTimer.Start(); StartRace.Enabled = false; }
private void Update() { Debug.Log(QualitySettings.pixelLightCount); //Debug.Log(1.0 / Time.deltaTime); //FPS for (int i = 0; i < cars.Length; i++) { cars[i].nearestCheckpoint = NearestCheckpoint(i); } if (!isLevelWon) { for (int i = 0; i < cars.Length; i++) { if (cars[i].lapsComplete == totalLaps) //Doesn't run when isLevelWon is set to true in this condition { isLevelWon = true; Vehicle.Player winningVehicle = cars[i].carTransform.GetComponent <Vehicle>().vehiclesPlayer; winText.enabled = true; if (gameType == "Competition" || gameType == null) { winText.text = ($"Player {i + 1} wins!"); SavePlayerData(winningVehicle); //Saves data to a file CompetitionWinner.AddPointTo(i); } else if (gameType == "TimeTrial") { winText.text = "You finished!"; timer.StopTimer(); RaceTimer.CheckAndSetBetterTime(timer); RaceTimer.SaveTimes(); } StartCoroutine(LoadSceneAfterWait(3f)); if (gameType == "TimeTrial") { GameObject.FindGameObjectWithTag("Music").GetComponent <MusicManager>().StopMusic(); } } } for (int i = 0; i < cars.Length; i++) { if (cars[i].nearestCheckpoint == null) { Debug.Log("Test"); return; } if (cars[i].nearestCheckpoint.index == cars[i].lastSeenCheckpoint.index) { } else if (cars[i].nearestCheckpoint.index > cars[i].lastSeenCheckpoint.index) { Debug.Log("test..."); var distance = cars[i].nearestCheckpoint.index - cars[i].lastSeenCheckpoint.index; if (distance > longestPermittedShortcut + 1) { cars[i].wrongWayIndicator.SetActive(true); } else { cars[i].lastSeenCheckpoint = cars[i].nearestCheckpoint; cars[i].wrongWayIndicator.SetActive(false); } } else if (cars[i].nearestCheckpoint.isLapStart && cars[i].lastSeenCheckpoint.next.isLapStart) { Debug.Log("Test!"); cars[i].lastSeenCheckpoint = cars[i].nearestCheckpoint; cars[i].lapsComplete += 1; UpdateLapCounter(i); } else { //Checkpoint is lower than the last one, player is going the wrong way cars[i].wrongWayIndicator.SetActive(true); } } } }
private void Start() { Timer = GameObject.Find("Timer").GetComponent <RaceTimer>(); gd = GameObject.Find("GameManager").GetComponent <PJGlobalData>(); }