// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. #nullable enable using System; using System.Collections.Generic; using Newtonsoft.Json; using osu.Game.Rulesets.Scoring; using osu.Game.Scoring; namespace osu.Game.Online.Spectator { [Serializable] public class FrameHeader { public int Combo { get; set; } public int MaxCombo { get; set; } public Dictionary Statistics { get; set; } /// /// Construct header summary information from a point-in-time reference to a score which is actively being played. /// /// The score for reference. public FrameHeader(ScoreInfo score) { Combo = score.Combo; MaxCombo = score.MaxCombo; // copy for safety Statistics = new Dictionary(score.Statistics); } [JsonConstructor] public FrameHeader(int combo, int maxCombo, Dictionary statistics) { Combo = combo; MaxCombo = maxCombo; Statistics = statistics; } } }