Пример #1
0
        internal static LapCompletedInfo Parse(BinaryReader br)
        {
            var id      = br.ReadByte();
            var laptime = TimeSpan.FromMilliseconds(br.ReadUInt32());
            var cuts    = br.ReadByte();

            var boardLen = br.ReadByte();
            var board    = new List <LeaderboardEntry>();

            for (int i = 0; i < boardLen; i++)
            {
                board.Add(LeaderboardEntry.Parse(br));
            }

            var grip = br.ReadSingle();

            return(new LapCompletedInfo(id, laptime, cuts, board, grip));
        }
Пример #2
0
        public override string ToString()
        {
            var builder = new System.Text.StringBuilder();

            builder.AppendFormat("{0} {{", nameof(LapCompletedInfo)).AppendLine();
            builder.AppendFormat("    {0} = {1}", nameof(CarId), CarId.ToString()).AppendLine();
            builder.AppendFormat("    {0} = {1}", nameof(LapTime), LapTime.ToString()).AppendLine();
            builder.AppendFormat("    {0} = {1}", nameof(Cuts), Cuts.ToString()).AppendLine();
            builder.AppendFormat("    {0} = {1}", nameof(GripLevel), GripLevel.ToString()).AppendLine();
            builder.AppendFormat("    Leaderboard: ");
            for (var i = 0; i < Leaderboard.Count; i++)
            {
                LeaderboardEntry entry = Leaderboard[i];
                builder.AppendFormat("    - {0}: {1}", i, entry).AppendLine();
            }

            builder.AppendFormat("}}").AppendLine();
            return(builder.ToString());
        }