Added IGuildUser Add/Remove Roles extensions
This commit is contained in:
19
src/Discord.Net/Extensions/GuildUserExtensions.cs
Normal file
19
src/Discord.Net/Extensions/GuildUserExtensions.cs
Normal file
@@ -0,0 +1,19 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Discord.Extensions
|
||||
{
|
||||
public static class GuildUserExtensions
|
||||
{
|
||||
public static Task AddRolesAsync(this IGuildUser user, params IRole[] roles)
|
||||
=> AddRolesAsync(user, (IEnumerable<IRole>)roles);
|
||||
public static Task AddRolesAsync(this IGuildUser user, IEnumerable<IRole> roles)
|
||||
=> user.ModifyAsync(x => x.Roles = Optional.Create(user.Roles.Concat(roles)));
|
||||
|
||||
public static Task RemoveRolesAsync(this IGuildUser user, params IRole[] roles)
|
||||
=> RemoveRolesAsync(user, (IEnumerable<IRole>)roles);
|
||||
public static Task RemoveRolesAsync(this IGuildUser user, IEnumerable<IRole> roles)
|
||||
=> user.ModifyAsync(x => x.Roles = Optional.Create(user.Roles.Except(roles)));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user