public void SetValues(Manager.KartInfo KI) { BG.gameObject.SetActive(true); Place.gameObject.SetActive(true); Driver.gameObject.SetActive(true); Time.gameObject.SetActive(true); Place.text = KI.Place.ToString() + TextFormatter.GetPlaceSuffix(KI.Place); //TextFormatter.GetPlaceSuffix(KI.Place); Driver.text = KI.Controller.ToString(); //TextFormatter.GetDriverName(KI.Controller); Time.text = TextFormatter.GetTimeFormatted(KI.Time); if (KI.Controller != KartController.Driver.AI) { BG.color = HighlightColor; } else { BG.color = NormalColor; } }
public void CheckpointHit(int Index, KartController KC) { if (Index == 0) { KC.CheckpointIndex = 0; KC.LastLapTime = SecondsPassed - KC.LapOffset; StartCoroutine(Scuffed(KC)); KC.LapOffset = SecondsPassed; KC.LapCount++; KC.Score++; KC.Place = GetPlace(KC); if (KC.LapCount == RaceData.Laps) { Manager.KartInfo KI = new Manager.KartInfo(); KI.Place = M.ScoreboardInfo.Count + 1; KI.Controller = KC.InControl; KI.Time = KC.LapOffset; M.ScoreboardInfo.Add(KI); if (KC.InControl != KartController.Driver.AI) { KC.CameraEmpty.GetComponent <PlayerCamera>().Spectate(); PlayersFinished++; if (PlayersFinished == RaceData.PlayerCount) { for (int i = 0; i < 64; i++) { if (i < M.ScoreboardInfo.Count) { M.ScoreboardUIS[i].SetValues(M.ScoreboardInfo[i]); } else if (i < RaceData.PlayerCount + RaceData.AICount) { M.ScoreboardUIS[i].SetNotFinished(i + 1); } else { M.ScoreboardUIS[i].SetHidden(); } } M.MM.SetScreen("Results"); } } else { if (PlayersFinished == RaceData.PlayerCount) //if game finished { M.ScoreboardUIS[M.ScoreboardInfo.Count - 1].SetValues(M.ScoreboardInfo[M.ScoreboardInfo.Count - 1]); } } Destroy(KC.gameObject); } } else { KC.CheckpointIndex++; KC.Score++; KC.Place = GetPlace(KC); } }