diff --git a/osu.Game/Scoring/IScoreInfo.cs b/osu.Game/Scoring/IScoreInfo.cs new file mode 100644 index 0000000000..c783a77203 --- /dev/null +++ b/osu.Game/Scoring/IScoreInfo.cs @@ -0,0 +1,42 @@ +// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. +// See the LICENCE file in the repository root for full licence text. + +using System; +using System.Collections.Generic; +using osu.Game.Beatmaps; +using osu.Game.Database; +using osu.Game.Users; + +namespace osu.Game.Scoring +{ + public interface IScoreInfo : IHasOnlineID + { + int TotalScore { get; set; } + + int MaxCombo { get; set; } + + User User { get; set; } + + long OnlineScoreID { get; set; } + + bool Replay { get; set; } + + DateTimeOffset Date { get; set; } + + BeatmapInfo BeatmapInfo { get; set; } + + double Accuracy { get; set; } + + double? PP { get; set; } + + BeatmapMetadata Metadata { get; set; } + + Dictionary Statistics { get; set; } + + int OnlineRulesetID { get; set; } + + string[] Mods { get; set; } + + public ScoreRank Rank { get; set; } + } +} diff --git a/osu.Game/Scoring/ScoreInfo.cs b/osu.Game/Scoring/ScoreInfo.cs index 8eaec0a477..0afec89450 100644 --- a/osu.Game/Scoring/ScoreInfo.cs +++ b/osu.Game/Scoring/ScoreInfo.cs @@ -19,7 +19,7 @@ using osu.Game.Utils; namespace osu.Game.Scoring { - public class ScoreInfo : IHasFiles, IHasPrimaryKey, ISoftDelete, IEquatable, IDeepCloneable, IHasOnlineID + public class ScoreInfo : IScoreInfo, IHasFiles, IHasPrimaryKey, ISoftDelete, IEquatable, IDeepCloneable { public int ID { get; set; } @@ -54,7 +54,7 @@ namespace osu.Game.Scoring public bool Passed { get; set; } = true; [JsonIgnore] - public virtual RulesetInfo Ruleset { get; set; } + public RulesetInfo Ruleset { get; set; } private APIMod[] localAPIMods; private Mod[] mods;