public async Task getRoleDesc([Summary("The role to get the description for")] string roleName) { var selectedRole = Context.Guild.Roles.FirstOrDefault(x => SupportingMethods.stringEquals(x.Name, roleName)); var allRoles = SupportingMethods.LoadAllRolesFromServer(); var role = allRoles.Find(x => SupportingMethods.stringEquals(x.Name, selectedRole.Name)); await ReplyAsync($"To get ***{role.Name}***\n\t-{role.Description}\n\t-Difficulty: {role.Difficulty}"); }
public async Task reorderRoles() { var allRoles = SupportingMethods.LoadAllRolesFromServer().OrderBy(x => x.Difficulty).ToList(); var allGuildRoles = Context.Guild.Roles.ToList(); foreach (var irole in allGuildRoles) { foreach (var role in allRoles) { if (role.Name == irole.Name) { await irole.ModifyAsync(x => x.Position = allRoles.IndexOf(role) + 1); break; } } } await ReplyAsync($"Roles have been reordered"); }
public async Task createRoles() { List <string> currentGuildRoles = new List <string>(); foreach (SocketRole guildRoles in ((SocketGuild)Context.Guild).Roles) { currentGuildRoles.Add(guildRoles.Name); } foreach (var role in SupportingMethods.LoadAllRolesFromServer()) { if (!currentGuildRoles.Contains(role.Name)) { var randColor = new Color(rand.Next(0, 256), rand.Next(0, 256), rand.Next(0, 256)); await Context.Guild.CreateRoleAsync(role.Name, GuildPermissions.None, randColor); await Logger.Log(new LogMessage(LogSeverity.Verbose, GetType().Name + ".createRoles", "Added role to server: " + role.Name)); await ReplyAsync($"Added role: {role.Name}\nHow to get: {role.Description}"); } } }