/// <summary> /// Get summary of timing, including elapsed time and split times. /// </summary> /// <returns></returns> public string getLatestTimingSummaryString() { return(string.Format("Elapsed: ~{0}~{1} ~n~~s~Fastest split: ~{2}~{3} ~n~~s~Vehicle split: ~{4}~{5}", (char)latestTimeType, TimingData.msToReadable(latestTime), latestRecordSplitTime <= 0 ? 'g' : 'r', TimingData.msToReadable(latestRecordSplitTime, true), latestVehicleSplitTime <= 0 ? 'g' : 'r', TimingData.msToReadable(latestVehicleSplitTime, true))); }
private void loadLapTimeMenu(UIMenu sender) { // clear the menu sender.Clear(); // validate the race; if race is invalid if (!race.isValid) { return; } // get the last checkpoint in list of checkpoints SectorCheckpoint finalChkpt = race.finishCheckpoint; // iterate over each k-v in the final checkpoint's timing data var times = finalChkpt.timing.vehicleFastestTime.OrderBy(x => x.Value); foreach (KeyValuePair <string, int> entry in times) { sender.AddItem(new UIMenuItem(TimingData.msToReadable(entry.Value, false, true) + " - " + entry.Key)); } sender.RefreshIndex(); }