private void EndRace() { //Camera Stuff GameObject[] CamerasToDeact = GameObject.FindGameObjectsWithTag("CameraD"); foreach (GameObject CO in CamerasToDeact) { CO.SetActive(false); } GameObject.FindGameObjectWithTag("CameraA").GetComponent <Camera>().enabled = true; //TODO //Show end screen stuff //Calculate total time decimal totaltime = 0; for (int i = 0; i < TimeList.Length; i++) { totaltime = totaltime + TimeList[i]; } int minutes = (int)totaltime / 60; decimal seconds = totaltime - (minutes * 60); if (!PlayerPrefs.HasKey(StageName + "P")) { PlayerPrefs.SetFloat(StageName + "P", (float)totaltime); } GameObject.FindGameObjectWithTag("PRPTT").GetComponent <TimeTrialResults>().SetResults(TimeList, StageName, totaltime); }
private void EndRace() { racefinished = true; Debug.Log("End Race Called"); string[] order = PositionSnapShot(); int numberoffinish = -1; if (FinalPositions[0] == "Player") //Player is first { //position snapshot should just work? } else if (FinalPositions[FinalPositions.Length - 1] == "Player") { //player is last string outputa = ""; foreach (string position in FinalPositions) { outputa = outputa + position + " : "; } Debug.Log(outputa); try { PlayerPoints.UpdateScores(FinalPositions, SceneToLoad); } catch { Debug.Log("No Point Manager Found, No Level Will Be Loaded"); } //Camera Stuff GameObject[] CamerasToDeact = GameObject.FindGameObjectsWithTag("CameraD"); foreach (GameObject CO in CamerasToDeact) { CO.SetActive(false); } GameObject.FindGameObjectWithTag("CameraA").GetComponent <Camera>().enabled = true; return; } else //Player isn't first { for (int i = 0; i < FinalPositions.Length; i++) { if (FinalPositions[i] == "NA") { numberoffinish = i; break; } } } if (numberoffinish == -1) { numberoffinish = 1; } for (int j = numberoffinish; j < FinalPositions.Length; j++) { FinalPositions[j] = order[j]; } string[] RaceFinishPosition = new string[FinalPositions.Length]; for (int q = 0; q < FinalPositions.Length; q++) { RaceFinishPosition[q] = Regex.Replace(FinalPositions[q], "[0-9]", ""); } string output = ""; foreach (string position in RaceFinishPosition) { output = output + position + " : "; } Debug.Log(output); try { PlayerPoints.UpdateScores(RaceFinishPosition, SceneToLoad); } catch { Debug.Log("No Point Manager Found, No Level Will Be Loaded"); } //Camera Stuff GameObject[] CamerasToDeactT = GameObject.FindGameObjectsWithTag("CameraD"); foreach (GameObject CO in CamerasToDeactT) { CO.SetActive(false); } GameObject.FindGameObjectWithTag("CameraA").GetComponent <Camera>().enabled = true; }