+ Make `ApplicationId` nullable + Move ctor after propspull/970/head
| @@ -5,11 +5,10 @@ namespace Discord | |||||
| [DebuggerDisplay(@"{DebuggerDisplay,nq}")] | [DebuggerDisplay(@"{DebuggerDisplay,nq}")] | ||||
| public class Game : IActivity | public class Game : IActivity | ||||
| { | { | ||||
| internal Game() { } | |||||
| public string Name { get; internal set; } | public string Name { get; internal set; } | ||||
| public ActivityType Type { get; internal set; } | public ActivityType Type { get; internal set; } | ||||
| internal Game() { } | |||||
| public Game(string name, ActivityType type = ActivityType.Playing) | public Game(string name, ActivityType type = ActivityType.Playing) | ||||
| { | { | ||||
| Name = name; | Name = name; | ||||
| @@ -1,15 +1,15 @@ | |||||
| namespace Discord | |||||
| namespace Discord | |||||
| { | { | ||||
| public class GameAsset | public class GameAsset | ||||
| { | { | ||||
| internal GameAsset() { } | internal GameAsset() { } | ||||
| internal ulong ApplicationId { get; set; } | |||||
| internal ulong? ApplicationId { get; set; } | |||||
| public string Text { get; internal set; } | public string Text { get; internal set; } | ||||
| public string ImageId { get; internal set; } | public string ImageId { get; internal set; } | ||||
| public string GetImageUrl(ImageFormat format = ImageFormat.Auto, ushort size = 128) | public string GetImageUrl(ImageFormat format = ImageFormat.Auto, ushort size = 128) | ||||
| => CDN.GetRichAssetUrl(ApplicationId, ImageId, size, format); | |||||
| => ApplicationId.HasValue ? CDN.GetRichAssetUrl(ApplicationId.Value, ImageId, size, format) : null; | |||||
| } | } | ||||
| } | |||||
| } | |||||
| @@ -7,8 +7,6 @@ namespace Discord | |||||
| [DebuggerDisplay(@"{DebuggerDisplay,nq}")] | [DebuggerDisplay(@"{DebuggerDisplay,nq}")] | ||||
| public class SpotifyGame : Game | public class SpotifyGame : Game | ||||
| { | { | ||||
| internal SpotifyGame() { } | |||||
| public string[] Artists { get; internal set; } | public string[] Artists { get; internal set; } | ||||
| public string AlbumArt { get; internal set; } | public string AlbumArt { get; internal set; } | ||||
| public string AlbumTitle { get; internal set; } | public string AlbumTitle { get; internal set; } | ||||
| @@ -17,6 +15,8 @@ namespace Discord | |||||
| public string SessionId { get; internal set; } | public string SessionId { get; internal set; } | ||||
| public TimeSpan? Duration { get; internal set; } | public TimeSpan? Duration { get; internal set; } | ||||
| internal SpotifyGame() { } | |||||
| public override string ToString() => Name; | public override string ToString() => Name; | ||||
| private string DebuggerDisplay => $"{Name} (Spotify)"; | private string DebuggerDisplay => $"{Name} (Spotify)"; | ||||
| } | } | ||||
| @@ -55,7 +55,7 @@ namespace Discord.WebSocket | |||||
| } | } | ||||
| // (Small, Large) | // (Small, Large) | ||||
| public static GameAsset[] ToEntity(this API.GameAssets model, ulong appId = 0) | |||||
| public static GameAsset[] ToEntity(this API.GameAssets model, ulong? appId = null) | |||||
| { | { | ||||
| return new GameAsset[] | return new GameAsset[] | ||||
| { | { | ||||