diff --git a/src/Discord.Net.Commands/Info/CommandInfo.cs b/src/Discord.Net.Commands/Info/CommandInfo.cs index 996799972..27cd58d5f 100644 --- a/src/Discord.Net.Commands/Info/CommandInfo.cs +++ b/src/Discord.Net.Commands/Info/CommandInfo.cs @@ -63,8 +63,8 @@ namespace Discord.Commands _action = builder.Callback; } - public TPrecondition GetPrecondition() where TPrecondition : PreconditionAttribute => - Preconditions.FirstOrDefault(x => x.GetType() == typeof(TPrecondition)) as TPrecondition; + public IEnumerable GetPrecondition() where TPrecondition : PreconditionAttribute => + Preconditions.Where(x => x.GetType() == typeof(TPrecondition)).Select(x => x as TPrecondition); public async Task CheckPreconditionsAsync(ICommandContext context, IDependencyMap map = null) { diff --git a/src/Discord.Net.Commands/Info/ModuleInfo.cs b/src/Discord.Net.Commands/Info/ModuleInfo.cs index 9ea5c5661..43bcd8e21 100644 --- a/src/Discord.Net.Commands/Info/ModuleInfo.cs +++ b/src/Discord.Net.Commands/Info/ModuleInfo.cs @@ -20,8 +20,8 @@ namespace Discord.Commands public ModuleInfo Parent { get; } public bool IsSubmodule => Parent != null; - public TPrecondition GetPrecondition() where TPrecondition : PreconditionAttribute => - Preconditions.FirstOrDefault(x => x.GetType() == typeof(TPrecondition)) as TPrecondition; + public IEnumerable GetPrecondition() where TPrecondition : PreconditionAttribute => + Preconditions.Where(x => x.GetType() == typeof(TPrecondition)).Select(x => x as TPrecondition); internal ModuleInfo(ModuleBuilder builder, CommandService service, ModuleInfo parent = null) {