Give playlist items a PlayedAt date

This commit is contained in:
Dan Balasescu
2021-12-03 20:05:25 +09:00
parent 9d6fe558c2
commit d5803e541b
6 changed files with 26 additions and 30 deletions

View File

@ -742,7 +742,8 @@ namespace osu.Game.Online.Multiplayer
Beatmap = { Value = apiBeatmap },
Ruleset = { Value = ruleset },
Expired = item.Expired,
PlaylistOrder = item.PlaylistOrder
PlaylistOrder = item.PlaylistOrder,
PlayedAt = item.PlayedAt
};
playlistItem.RequiredMods.AddRange(item.RequiredMods.Select(m => m.ToMod(rulesetInstance)));

View File

@ -46,11 +46,10 @@ namespace osu.Game.Online.Rooms
public ushort PlaylistOrder { get; set; }
/// <summary>
/// The date when this <see cref="MultiplayerPlaylistItem"/> was last updated.
/// Not serialised to/from the client.
/// The date when this <see cref="MultiplayerPlaylistItem"/> was played.
/// </summary>
[IgnoreMember]
public DateTimeOffset UpdatedAt { get; set; }
[Key(9)]
public DateTimeOffset? PlayedAt { get; set; }
public MultiplayerPlaylistItem()
{
@ -66,6 +65,7 @@ namespace osu.Game.Online.Rooms
AllowedMods = item.AllowedMods.Select(m => new APIMod(m)).ToArray();
Expired = item.Expired;
PlaylistOrder = item.PlaylistOrder ?? 0;
PlayedAt = item.PlayedAt;
}
}
}

View File

@ -36,6 +36,9 @@ namespace osu.Game.Online.Rooms
[JsonProperty("playlist_order")]
public ushort? PlaylistOrder { get; set; }
[JsonProperty("played_at")]
public DateTimeOffset? PlayedAt { get; set; }
[JsonIgnore]
public IBindable<bool> Valid => valid;