diff --git a/src/Discord.Net.Rest/Entities/Interactions/MessageComponents/RestMessageComponentData.cs b/src/Discord.Net.Rest/Entities/Interactions/MessageComponents/RestMessageComponentData.cs index 2b31990f3..ce25084b4 100644 --- a/src/Discord.Net.Rest/Entities/Interactions/MessageComponents/RestMessageComponentData.cs +++ b/src/Discord.Net.Rest/Entities/Interactions/MessageComponents/RestMessageComponentData.cs @@ -25,16 +25,16 @@ namespace Discord.Rest /// public IReadOnlyCollection Values { get; } - /// /> + /// public IReadOnlyCollection Channels { get; } - /// /> + /// public IReadOnlyCollection Users { get; } - /// /> + /// public IReadOnlyCollection Roles { get; } - /// /> + /// public IReadOnlyCollection Members { get; } #region IComponentInteractionData diff --git a/src/Discord.Net.WebSocket/Entities/Interaction/MessageComponents/SocketMessageComponentData.cs b/src/Discord.Net.WebSocket/Entities/Interaction/MessageComponents/SocketMessageComponentData.cs index d54430095..535647fa7 100644 --- a/src/Discord.Net.WebSocket/Entities/Interaction/MessageComponents/SocketMessageComponentData.cs +++ b/src/Discord.Net.WebSocket/Entities/Interaction/MessageComponents/SocketMessageComponentData.cs @@ -22,16 +22,17 @@ namespace Discord.WebSocket /// public IReadOnlyCollection Values { get; } - /// /> + /// public IReadOnlyCollection Channels { get; } - /// /> - public IReadOnlyCollection Users { get; } + /// + /// Returns is user is cached otherwise. + public IReadOnlyCollection Users { get; } - /// /> + /// public IReadOnlyCollection Roles { get; } - /// /> + /// public IReadOnlyCollection Members { get; } #region IComponentInteractionData @@ -62,7 +63,7 @@ namespace Discord.WebSocket if (model.Resolved.IsSpecified) { Users = model.Resolved.Value.Users.IsSpecified - ? model.Resolved.Value.Users.Value.Select(user => RestUser.Create(discord, user.Value)).ToImmutableArray() + ? model.Resolved.Value.Users.Value.Select(user => (IUser)state.GetUser(user.Value.Id) ?? RestUser.Create(discord, user.Value)).ToImmutableArray() : null; Members = model.Resolved.Value.Members.IsSpecified @@ -105,7 +106,7 @@ namespace Discord.WebSocket if (select.Resolved.IsSpecified) { Users = select.Resolved.Value.Users.IsSpecified - ? select.Resolved.Value.Users.Value.Select(user => RestUser.Create(discord, user.Value)).ToImmutableArray() + ? select.Resolved.Value.Users.Value.Select(user => (IUser)state.GetUser(user.Value.Id) ?? RestUser.Create(discord, user.Value)).ToImmutableArray() : null; Members = select.Resolved.Value.Members.IsSpecified