Add DisplayAvatar to IGuildUser (#2115)

This commit is contained in:
Armano den Boef
2022-02-16 14:49:55 +01:00
committed by GitHub
parent 9a33aa4371
commit 1ffe9eeca9
6 changed files with 58 additions and 3 deletions

View File

@@ -34,6 +34,8 @@ namespace Discord.WebSocket
/// <inheritdoc />
public string Nickname { get; private set; }
/// <inheritdoc/>
public string DisplayAvatarId => GuildAvatarId ?? AvatarId;
/// <inheritdoc/>
public string GuildAvatarId { get; private set; }
/// <inheritdoc />
public override bool IsBot { get { return GlobalUser.IsBot; } internal set { GlobalUser.IsBot = value; } }
@@ -246,6 +248,14 @@ namespace Discord.WebSocket
/// <inheritdoc />
public ChannelPermissions GetPermissions(IGuildChannel channel)
=> new ChannelPermissions(Permissions.ResolveChannel(Guild, this, channel, GuildPermissions.RawValue));
/// <inheritdoc />
public string GetDisplayAvatarUrl(ImageFormat format = ImageFormat.Auto, ushort size = 128)
=> GuildAvatarId is not null
? GetGuildAvatarUrl(format, size)
: GetAvatarUrl(format, size);
/// <inheritdoc />
public string GetGuildAvatarUrl(ImageFormat format = ImageFormat.Auto, ushort size = 128)
=> CDN.GetGuildUserAvatarUrl(Id, Guild.Id, GuildAvatarId, size, format);

View File

@@ -58,6 +58,9 @@ namespace Discord.WebSocket
get => GuildUser.AvatarId;
internal set => GuildUser.AvatarId = value;
}
/// <inheritdoc/>
public string DisplayAvatarId => GuildAvatarId ?? AvatarId;
/// <inheritdoc/>
public string GuildAvatarId
=> GuildUser.GuildAvatarId;
@@ -201,6 +204,10 @@ namespace Discord.WebSocket
/// <inheritdoc/>
IReadOnlyCollection<ulong> IGuildUser.RoleIds => GuildUser.Roles.Select(x => x.Id).ToImmutableArray();
/// <inheritdoc />
string IGuildUser.GetDisplayAvatarUrl(ImageFormat format, ushort size) => GuildUser.GetDisplayAvatarUrl(format, size);
/// <inheritdoc />
string IGuildUser.GetGuildAvatarUrl(ImageFormat format, ushort size) => GuildUser.GetGuildAvatarUrl(format, size);
internal override SocketGlobalUser GlobalUser { get => GuildUser.GlobalUser; set => GuildUser.GlobalUser = value; }

View File

@@ -67,8 +67,12 @@ namespace Discord.WebSocket
/// <inheritdoc />
string IGuildUser.Nickname => null;
/// <inheritdoc />
string IGuildUser.DisplayAvatarId => null;
/// <inheritdoc />
string IGuildUser.GuildAvatarId => null;
/// <inheritdoc />
string IGuildUser.GetDisplayAvatarUrl(ImageFormat format, ushort size) => null;
/// <inheritdoc />
string IGuildUser.GetGuildAvatarUrl(ImageFormat format, ushort size) => null;
/// <inheritdoc />
DateTimeOffset? IGuildUser.PremiumSince => null;