public void CmdUpdateScoreBoard() { allCars = DeathRaceManager.GetCars(); SortResults(); scoreboardText.text = "Scoreboard\n"; for (int i = 0; i < allCars.Count; i++) { scoreboardText.text += "Player: " + allCars[i].PlayerName + " " + "Score: " + allCars[i].score + " "; if (allCars[i].raceFinishTime != 9999999) { scoreboardText.text += "Time: " + allCars[i].raceFinishTime + "\n"; } else { scoreboardText.text += "Time: " + "NOT FINISHED\n"; } } scoreboardText.text += "Winner: " + allCars[0].PlayerName; RpcUpdateScoreBoardText(scoreboardText.text); }
public void CmdWriteOutIndividualData() { if (!isServer) { return; } CmdUpdateIndividualScores(); foreach (CarMovement car in DeathRaceManager.GetCars()) { StreamWriter carWriter = new StreamWriter("PlayerScores/" + car.PlayerName + car.carType + ".txt"); foreach (int score in PlayerScoreData[car.PlayerName]) { carWriter.WriteLine(score); } carWriter.Close(); } }
public void CmdUpdateIndividualScores() { if (!isServer) { return; } //Debug.Log("Attempting to update individual scores"); PlayerScoreData.Clear(); foreach (CarMovement car in DeathRaceManager.GetCars()) { InitializeScoreFile(car.PlayerName); StreamReader carReader = new StreamReader("PlayerScores/" + car.PlayerName + car.carType + ".txt"); //Debug.Log("accessing file"); List <int> temp = new List <int>(); for (int i = 0; i < 10; i++) { try { temp.Add(int.Parse(carReader.ReadLine())); } catch { break; } } temp.Add(car.score); temp.Sort(); temp.Reverse(); PlayerScoreData.Add(car.PlayerName, temp); carReader.Close(); } }
public void CmdWriteOutScoresData() { if (!isServer) { return; } gameScores.Clear(); gameTimes.Clear(); foreach (CarMovement car in DeathRaceManager.GetCars()) { NameVal temp = new NameVal(); temp.name = car.PlayerName; temp.val = car.score; gameScores.Add(temp); } foreach (CarMovement car in DeathRaceManager.GetCars()) { NameVal temp = new NameVal(); temp.name = car.PlayerName; temp.val = (int)car.raceFinishTime; gameTimes.Add(temp); } foreach (NameVal pair in gameScores) { fileScores.Add(pair); } foreach (NameVal pair in gameTimes) { fileTimes.Add(pair); } fileScores = (fileScores.OrderBy(s => s.val)).ToList <NameVal>(); fileScores.Reverse(); fileTimes = (fileTimes.OrderBy(t => t.val)).ToList <NameVal>(); List <NameVal> tempFileScores = new List <NameVal>(5); List <NameVal> tempFileTimes = new List <NameVal>(5); for (int i = 0; i < 5; i++) { tempFileScores.Add(fileScores[i]); tempFileTimes.Add(fileTimes[i]); } fileScores = tempFileScores; fileTimes = tempFileTimes; StreamWriter scoresWriter = new StreamWriter(scoresPath, false); foreach (NameVal pair in fileScores) { scoresWriter.WriteLine(pair.name); scoresWriter.WriteLine(pair.val); } scoresWriter.Close(); StreamWriter timesWriter = new StreamWriter(timesPath, false); foreach (NameVal pair in fileTimes) { timesWriter.WriteLine(pair.name); timesWriter.WriteLine(pair.val); } timesWriter.Close(); }