public async Task RoleUnSetAsync(params SocketRole[] roles) { ulong name = Context.Guild.Id; GuildData data; if (!GuildManager.CheckGuildData(name)) { await ReplyAsync("No GuildData for this Guild!"); return; } else { data = GuildManager.GetGuildData(name).Result; } foreach (SocketRole role in roles) { if (data.AssignableRoles.Contains(role.Id)) { data.AssignableRoles.Remove(role.Id); await ReplyAsync($"Unset Role {role.Name} from self-apply!"); } } await GuildManager.SetGuildData(data); }
public async Task SetLogAsync(SocketChannel channel) { ulong chanID = channel.Id; if (GuildManager.CheckGuildData(Context.Guild.Id)) { GuildData data = await GuildManager.GetGuildData(Context.Guild.Id); data.LogChannel = chanID; await GuildManager.SetGuildData(data); } else { GuildData data = new GuildData { GuildID = Context.Guild.Id, LogChannel = chanID }; await GuildManager.SetGuildData(data); } }
public async Task RoleAsync(SocketRole role) { ulong servID = Context.Guild.Id; List <ulong> userRoles = new List <ulong>(); foreach (SocketRole usrRole in Context.Guild.GetUser(Context.User.Id).Roles) { userRoles.Add(usrRole.Id); } if (GuildManager.CheckGuildData(servID)) { GuildData data; data = GuildManager.GetGuildData(servID).Result; foreach (ulong roleID in data.AssignableRoles) { if (roleID == role.Id) { if (userRoles.Contains(role.Id)) { await Context.Guild.GetUser(Context.User.Id).RemoveRoleAsync(role); await ReplyAsync($"Removed {role.Name}!"); } else { await Context.Guild.GetUser(Context.User.Id).AddRoleAsync(role); await ReplyAsync($"Added {role.Name}!"); } } } } else { await ReplyAsync("No GuildData for this Guild!"); } }