Exemple #1
0
        public async Task Flip()
        {
            var  random = new Random();
            bool heads  = random.Next(0, 2) == 1;

            await ReplyAsync(EmbedHandler.CreateBasicEmbed("Coin Flip", $"The coin landed on... `{(heads ? "heads" : "tails")}`", Color.LightOrange));
        }
Exemple #2
0
        public async Task <Embed> AddAllToDatabase(PlayersRulesService _playersRulesService)
        {
            Stopwatch stopWatch = new Stopwatch();

            stopWatch.Start();
            IEnumerable <string> strings = await JsonHandler.GetAllJsonInFolder(JsonFiles);

            bool songsOnly = false;

            foreach (string s in strings)
            {
                if (s.ToLower().Contains("teams") || s.ToLower().Contains("co-op") || s.ToLower().Contains("coop"))
                {
                    songsOnly = true;
                }

                await Task.Run(async() => await AddToDatabase(_playersRulesService, s, songsOnly));
            }
            stopWatch.Stop();
            // Get the elapsed time as a TimeSpan value.
            TimeSpan ts = stopWatch.Elapsed;
            // Format and display the TimeSpan value.
            string elapsedTime = String.Format("{0:00}:{1:00}.{2:00}",
                                               ts.Minutes, ts.Seconds,
                                               ts.Milliseconds / 10);

            return(await EmbedHandler.CreateBasicEmbed("Data", "All songs from the Json Files have" +
                                                       " been added to the Database and player stats were updated \n" + "RunTime: " + elapsedTime, Color.Blue));
        }
Exemple #3
0
        public async Task ShowRankEXP(int rank)
        {
            try
            {
                if (rank <= 0)
                {
                    throw new ArgumentException("Rank cannot be less than 0");
                }

                var rankedUsers = await GuildUsers.GetRankedGuildUsersAsync(Context.Guild);

                if (rank > rankedUsers.Count)
                {
                    throw new ArgumentException("Rank exceeds number of ranked users");
                }

                var target = rankedUsers[rank - 1];
                if (target is null)
                {
                    throw new InvalidOperationException($"User at rank `{rank}` could not be found");
                }

                string imageURL = $"{Global.Config.DashboardURL}/api/servers/{target.Guild.Id}/users/{target.Id}/xp-card";
                var    stream   = await CommandUtils.DownloadData(imageURL);

                await Context.Channel.SendFileAsync(stream, "server-xp-card.png");
            }
            catch (ArgumentException ex) { await ReplyAsync(EmbedHandler.CreateErrorEmbed(ModuleName, ex.Message)); }
        }
            public async Task UpdateWowSpec(SocketUser user, [Summary("The current spec you are playing in World of Warcraft")][Remainder] string spec)
            {
                if (spec.ToLower() != "tank" || spec.ToLower() != "dps" || spec.ToLower() != "healer")
                {
                    await ReplyAsync("Sorry the accepted specs are: ``Tank``, ``DPS``, ``Healer``");
                }
                else
                {
                    switch (spec.ToLower())
                    {
                    case "dps":
                        spec = "DPS";
                        break;

                    case "tank":
                        spec = "Tank";
                        break;

                    case "healer":
                        spec = "Healer";
                        break;

                    default:
                        break;
                    }
                    UserAccounts.AccountUpdate(user, spec, UserAccounts.UpdateType.WowMainSpec);
                    await ReplyAsync("", false, EmbedHandler.CreateEmbed("Account Updated", $"**The Current Main Spec Has Been Set To: __{spec}__**", EmbedHandler.EmbedMessageType.Success, true));
                }
            }
Exemple #5
0
        public async Task Create(string name)
        {
            await Context.Message.DeleteAsync();

            var blogs = DataStorage.RestoreObject <List <BlogItem> >(blogFile) ?? new List <BlogItem>();

            if (blogs.FirstOrDefault(k => k.Name == name) == null)
            {
                var newBlog = new BlogItem
                {
                    BlogId      = Guid.NewGuid(),
                    Author      = Context.User.Id,
                    Name        = name,
                    Subscribers = new List <ulong>()
                };

                blogs.Add(newBlog);

                DataStorage.StoreObject(blogs, blogFile, Formatting.Indented);

                var embed = EmbedHandler.CreateEmbed("Blog", $"Your blog {name} was created.", EmbedHandler.EmbedMessageType.Success);
                await Context.Channel.SendMessageAsync("", false, embed);
            }
            else
            {
                var embed = EmbedHandler.CreateEmbed("Blog :x:", $"There is already a Blog with the name {name}", EmbedHandler.EmbedMessageType.Error);
                await Context.Channel.SendMessageAsync("", false, embed);
            }
        }
Exemple #6
0
        public async Task Text(string NazwaCzatu)
        {
            await Context.Guild.CreateTextChannelAsync(NazwaCzatu);

            var embed = EmbedHandler.CreateEmbed("Stworzyłem czat o nazwie " + NazwaCzatu + " na tym serwerze!", EmbedHandler.EmbedMessageType.Success);
            await Context.Channel.SendMessageAsync("", false, embed);
        }
Exemple #7
0
        public async Task Clear(int IlośćWiadomościDoUsunięcia)
        {
            await(Context.Message.Channel as SocketTextChannel).DeleteMessagesAsync(await Context.Message.Channel.GetMessagesAsync(IlośćWiadomościDoUsunięcia + 1).FlattenAsync());

            var embed = EmbedHandler.CreateEmbed("Wyczyściłem :recycle: " + IlośćWiadomościDoUsunięcia + ":recycle: ostatnich wiadomości na  " + Context.Channel + "!", EmbedHandler.EmbedMessageType.Success);
            await Context.Channel.SendMessageAsync("", false, embed);
        }
Exemple #8
0
        public async Task <Embed> PauseCurrentTrack(SocketGuildUser user, IMessageChannel channel)
        {
            LavaPlayer player = lavalink.DefaultNode.GetPlayer(Config.Bot.ServerID);

            player.TextChannel = channel;

            if (player.CurrentTrack != null)
            {
                if (player.IsPlaying && !player.IsPaused)
                {
                    await player.PauseAsync();

                    return(await EmbedHandler.CreateEmbed("Audio", string.Format("{0} set the player to pause.", user.Username)));
                }
                else
                {
                    await player.PauseAsync();

                    return(await EmbedHandler.CreateEmbed("Audio", string.Format("{0} unpaused the player.", user.Username)));
                }
            }
            else
            {
                return(await EmbedHandler.CreateEmbed("Audio", "There's nothing to pause currently.\nPerhaps add a track first, you retard."));
            }
        }
Exemple #9
0
        public async Task Text()
        {
            var guildUser = Context.User as SocketGuildUser;

            if (!guildUser.GuildPermissions.ManageChannels)
            {
                string description =
                    $"{Global.ENo} **|** You Need the **Manage Channels** Permission to do that {Context.User.Username}";
                var errorEmbed = EmbedHandler.CreateEmbed(Context, "Error", description,
                                                          EmbedHandler.EmbedMessageType.Exception);
                await ReplyAndDeleteAsync("", embed : errorEmbed);

                return;
            }

            var role  = Context.Guild.Roles.FirstOrDefault(r => r.Name == "@everyone");
            var perms = new OverwritePermissions(
                sendMessages: PermValue.Deny,
                addReactions: PermValue.Deny,
                viewChannel: PermValue.Allow
                );
            var channel = await Context.Guild.CreateTextChannelAsync("Reports");

            await channel.AddPermissionOverwriteAsync(role, perms);
        }
Exemple #10
0
        public async Task <Embed> SkipCurrentlyPlayingTrack(SocketGuildUser user, IMessageChannel channel)
        {
            LavaPlayer player = lavalink.DefaultNode.GetPlayer(Config.Bot.ServerID);

            player.TextChannel = channel;

            if (player.CurrentTrack != null && player.IsPlaying)
            {
                WasSkipped = true;
                LavaTrack track = player.CurrentTrack;
                await player.StopAsync();

                if (player.Queue.Count > 0)
                {
                    await player.PlayAsync(player.Queue.Items.ElementAt(0));

                    return(await EmbedHandler.CreateEmbed("Audio", string.Format("{0} was skipped.\nNext song: {1}.", track.Title, player.CurrentTrack.Title)));
                }
                else
                {
                    return(await EmbedHandler.CreateEmbed("Audio", string.Format("{0} was skipped.\nThere are no more tracks in the queue.", track.Title)));
                }
            }
            else
            {
                return(await EmbedHandler.CreateErrorEmbed("Audio, Current Track", "There Are No Current Track."));
            }
        }
Exemple #11
0
        public async Task OnFinished(LavaPlayer player, LavaTrack track, TrackReason reason)
        {
            if (reason is TrackReason.LoadFailed || reason is TrackReason.Cleanup)
            {
                return;
            }

            if (Loop && !WasSkipped)
            {
                await player.PlayAsync(track);

                await player.TextChannel.SendMessageAsync("", false,
                                                          await EmbedHandler.CreateEmbed("Audio", string.Format("{0} is on repeat.", track.Title)));
            }
            else
            {
                WasSkipped = false;
                player.Queue.TryDequeue(out LavaTrack nextTrack);

                if (nextTrack is null)
                {
                    await player.StopAsync();
                }
                else
                {
                    await player.PlayAsync(nextTrack);

                    await player.TextChannel.SendMessageAsync("", false,
                                                              await EmbedHandler.CreateEmbed("Audio", string.Format("Now playing: {0}", nextTrack.Title)));
                }
            }
        }
Exemple #12
0
        public async Task <Embed> NowPlayingAsync(ShardedCommandContext context)
        {
            if (!_lavaNode.TryGetPlayer(context.Guild, out var player))
            {
                return(EmbedHandler.CreateEmbed(context, "Music",
                                                $"{Global.ENo} | I'm not connected to a voice channel.", EmbedHandler.EmbedMessageType.Error));
            }

            if (player.PlayerState != PlayerState.Playing)
            {
                return(EmbedHandler.CreateEmbed(context, "Music",
                                                $"{Global.ENo} | There's nothing playing at the moment", EmbedHandler.EmbedMessageType.Error));
            }

            var track   = player.Track;
            var artwork = await track.FetchArtworkAsync();

            var embed = new EmbedBuilder
            {
                Title        = $"{track.Author} - {track.Title}",
                ThumbnailUrl = artwork,
                Description  = GetSong(player),
                Url          = track.Url,
                Color        = Global.NayuColor,
            };

            embed.WithFooter($"Id: {track.Id}");

            return(embed.Build());
        }
Exemple #13
0
        public async Task ClearCMD(SocketGuildUser user)
        {
            var guildUser = Context.User as SocketGuildUser;

            if (!guildUser.GuildPermissions.ManageMessages)
            {
                string description =
                    $"{Global.ENo} **|** You Need the **Manage Messages** Permission to do that {Context.User.Username}";
                var errorEmbed = EmbedHandler.CreateEmbed(Context, "Error", description,
                                                          EmbedHandler.EmbedMessageType.Exception);
                await ReplyAndDeleteAsync("", embed : errorEmbed);

                return;
            }

            var messages = await Context.Channel.GetMessagesAsync(100).FlattenAsync();

            var result = messages.Where(x =>
                                        x.Author.Id == user.Id && x.CreatedAt >= DateTimeOffset.UtcNow.Subtract(TimeSpan.FromDays(14)));

            if (Context.Channel is ITextChannel channel)
            {
                await channel.DeleteMessagesAsync(result);
            }
        }
Exemple #14
0
        public async Task Suggest([Remainder] string details)
        {
            try
            {
                var features = details.Split("|");
                if (features.Length < 3)
                {
                    throw new ArgumentException("Suggest", "Please seperate *Title*, *Subtitle*, and *Description* with | (vertical bar).");
                }
                else if (string.IsNullOrWhiteSpace(details.Replace("|", "")))
                {
                    throw new ArgumentException("Suggest", "Please add content to the suggestion.");
                }

                string title       = features[0];
                string subtitle    = features[1];
                string description = features[2];

                var embed = new EmbedBuilder()
                            .WithTitle(title)
                            .AddField(subtitle, description)
                            .WithColor(Color.DarkBlue)
                            .WithFooter($"By {Context.User.Username}#{Context.User.Discriminator}")
                            .WithCurrentTimestamp();

                var suggestMessage = await ReplyAsync(embed);

                Emoji[] emotes = { new Emoji(CurrentGuild.General.UpvoteEmote), new Emoji(CurrentGuild.General.DownvoteEmote) };
                emotes = emotes.Where(e => e != null).ToArray();
                await suggestMessage.AddReactionsAsync(emotes);
            }
            catch (ArgumentException ex) { await ReplyAsync(EmbedHandler.CreateErrorEmbed(ModuleName, ex.Message)); }
        }
Exemple #15
0
        public async Task Ban([NoSelf][RequireBotHigherHirachy] SocketGuildUser Użytkownik)
        {
            await Context.Guild.AddBanAsync(Użytkownik);

            var embed = EmbedHandler.CreateEmbed("Zbanowałem użytkownika :raised_back_of_hand: " + Użytkownik + " :raised_back_of_hand: na tym serwerze!", EmbedHandler.EmbedMessageType.Success);
            await Context.Channel.SendMessageAsync("", false, embed);
        }
Exemple #16
0
        public async Task ListWelcomeMessages()
        {
            var guildUser = Context.User as SocketGuildUser;

            if (!guildUser.GuildPermissions.Administrator)
            {
                string description =
                    $"{Global.ENo} **|** You Need the **Administrator** Permission to do that {Context.User.Username}";
                var errorEmbed = EmbedHandler.CreateEmbed(Context, "Error", description,
                                                          EmbedHandler.EmbedMessageType.Exception);
                await ReplyAndDeleteAsync("", embed : errorEmbed);

                return;
            }

            var welcomeMessages = GlobalGuildAccounts.GetGuildAccount(Context.Guild.Id).WelcomeMessages;
            var embed           = new EmbedBuilder().WithTitle(
                "No Welcome Messages set yet... add some if you want to greet incoming people!");

            if (welcomeMessages.Count > 0)
            {
                embed.WithTitle("Possible Welcome Messages:");
            }
            embed.WithColor(Global.NayuColor);

            for (var i = 0; i < welcomeMessages.Count; i++)
            {
                embed.AddField($"Message #{i + 1}:", welcomeMessages[i], true);
            }

            await ReplyAsync("", false, embed.Build());
        }
Exemple #17
0
        public async Task Nickname(SocketGuildUser NazwaUżytkownika, [Remainder] string Pseudonim)
        {
            await Context.Guild.GetUser(NazwaUżytkownika.Id).ModifyAsync(x => x.Nickname = Pseudonim);

            var embed = EmbedHandler.CreateEmbed("Zmieniłem pseudonim użytkowinika " + NazwaUżytkownika + " na " + Pseudonim + " na tym serwerze!", EmbedHandler.EmbedMessageType.Success);
            await Context.Channel.SendMessageAsync("", false, embed);
        }
Exemple #18
0
        public async Task SetIdIntoConfig(SocketGuildChannel chnl)
        {
            var guildUser = Context.User as SocketGuildUser;

            if (!guildUser.GuildPermissions.Administrator)
            {
                string description =
                    $"{Global.ENo} **|** You Need the **Administrator** Permission to do that {Context.User.Username}";
                var errorEmbed = EmbedHandler.CreateEmbed(Context, "Error", description,
                                                          EmbedHandler.EmbedMessageType.Exception);
                await ReplyAndDeleteAsync("", embed : errorEmbed);

                return;
            }

            var config   = GlobalGuildAccounts.GetGuildAccount(Context.Guild.Id);
            var response = $"Set this guild's welcome channel to #{chnl}.";

            config.WelcomeChannel = chnl.Id;
            GlobalGuildAccounts.SaveAccounts(Context.Guild.Id);
            var embed = EmbedHandler.CreateEmbed(Context, "Success!", response, EmbedHandler.EmbedMessageType.Success,
                                                 false);

            await SendMessage(Context, embed);
        }
Exemple #19
0
        public async Task Voice([Remainder] string NazwaKanału)
        {
            await Context.Guild.CreateVoiceChannelAsync(NazwaKanału);

            var embed = EmbedHandler.CreateEmbed("Stworzyłem kanał głosowy o nazwie " + NazwaKanału + " na tym serwerze!", EmbedHandler.EmbedMessageType.Success);
            await Context.Channel.SendMessageAsync("", false, embed);
        }
Exemple #20
0
        public async Task AddWelcomeMessage([Remainder] string message)
        {
            var guildUser = Context.User as SocketGuildUser;

            if (!guildUser.GuildPermissions.Administrator)
            {
                string description =
                    $"{Global.ENo} **|** You Need the **Administrator** Permission to do that {Context.User.Username}";
                var errorEmbed = EmbedHandler.CreateEmbed(Context, "Error", description,
                                                          EmbedHandler.EmbedMessageType.Exception);
                await ReplyAndDeleteAsync("", embed : errorEmbed);

                return;
            }

            var guildAcc = GlobalGuildAccounts.GetGuildAccount(Context.Guild.Id);
            var response = $"Failed to add this Welcome Message...";

            if (guildAcc.WelcomeMessages.Contains(message) == false)
            {
                guildAcc.WelcomeMessages.Add(message);
                GlobalGuildAccounts.SaveAccounts(Context.Guild.Id);
                response = $"Successfully added ```\n{message}\n``` as Welcome Message!";
            }

            var embed = EmbedHandler.CreateEmbed(Context, "Success!", response, EmbedHandler.EmbedMessageType.Success,
                                                 false);

            await SendMessage(Context, embed);
        }
Exemple #21
0
        public async Task SetGame(int typ, [Remainder] string NazwaGry)
        {
            if (typ == 0)
            {
                await Context.Client.SetGameAsync(NazwaGry, "https://www.twitch.tv/jucha1337", ActivityType.Streaming);

                var embed = EmbedHandler.CreateEmbed($"Zmieniłem na streama o nazwie **{NazwaGry}**", EmbedHandler.EmbedMessageType.Success);
                await Context.Channel.SendMessageAsync("", false, embed);
            }
            else
            {
                await Context.Client.SetGameAsync(NazwaGry);

                var embed = EmbedHandler.CreateEmbed($"Zmieniłem na grę **{NazwaGry}**", EmbedHandler.EmbedMessageType.Success);
                await Context.Channel.SendMessageAsync("", false, embed);
            }

            /*else if (typ == 2)
             * {
             *  await Context.Client.SetGameAsync(NazwaGry, "https://www.twitch.tv/bugger", ActivityType.Listening);
             * }
             * else if (typ == 3)
             * {
             *  await Context.Client.SetGameAsync(NazwaGry, "https://www.youtube.com/watch?v=Z-tc91hArlM", ActivityType.Watching);
             * } */
        }
Exemple #22
0
        public async Task RemoveWelcomeMessage(int messageIndex)
        {
            var guildUser = Context.User as SocketGuildUser;

            if (!guildUser.GuildPermissions.Administrator)
            {
                string description =
                    $"{Global.ENo} **|** You Need the **Administrator** Permission to do that {Context.User.Username}";
                var errorEmbed = EmbedHandler.CreateEmbed(Context, "Error", description,
                                                          EmbedHandler.EmbedMessageType.Exception);
                await ReplyAndDeleteAsync("", embed : errorEmbed);

                return;
            }

            var messages = GlobalGuildAccounts.GetGuildAccount(Context.Guild.Id).WelcomeMessages;
            var response =
                $"Failed to remove this Welcome Message... Use the number shown in `welcome list` next to the `#` sign!";

            if (messages.Count > messageIndex - 1)
            {
                messages.RemoveAt(messageIndex - 1);
                GlobalGuildAccounts.SaveAccounts(Context.Guild.Id);
                response = $"Successfully removed message #{messageIndex} as possible Welcome Message!";
            }

            var embed = EmbedHandler.CreateEmbed(Context, "Success!", response, EmbedHandler.EmbedMessageType.Success,
                                                 false);

            await SendMessage(Context, embed);
        }
Exemple #23
0
        public async Task UnblockChannel()
        {
            var guildUser = Context.User as SocketGuildUser;

            if (!guildUser.GuildPermissions.ManageChannels)
            {
                string description =
                    $"{Global.ENo} **|** You Need the **Manage Channels** Permission to do that {Context.User.Username}";
                var errorEmbed = EmbedHandler.CreateEmbed(Context, "Error", description,
                                                          EmbedHandler.EmbedMessageType.Exception);
                await ReplyAndDeleteAsync("", embed : errorEmbed);

                return;
            }

            var config = BotAccounts.GetAccount();

            config.BlockedChannels.Remove(Context.Channel.Id);
            BotAccounts.SaveAccounts();

            var embed = MiscHelpers
                        .CreateEmbed(Context, "Channel Unblocked", $":unlock: Unblocked {Context.Channel.Name}.")
                        .WithColor(Constants.DefaultColor);

            await SendMessage(Context, embed.Build());
        }
Exemple #24
0
        public async Task Lenny()
        {
            var embed = EmbedHandler.CreateEmbed(Context, "Lenny!", "( ͡° ͜ʖ ͡°)",
                                                 EmbedHandler.EmbedMessageType.Success, false);

            await SendMessage(Context, embed);
        }
Exemple #25
0
        public async Task SetPrefix([Remainder] string prefix = "")
        {
            try
            {
                CurrentGuild ??= await Guilds.GetAsync(Context.Guild);

                if (string.IsNullOrEmpty(prefix))
                {
                    await ReplyAsync(EmbedHandler.CreateBasicEmbed(ModuleName, $"**Current Prefix**: `{CurrentGuild.General.CommandPrefix}`", ModuleColour));

                    return;
                }
                const int maxLength = 16;
                if (prefix.Length > maxLength)
                {
                    throw new ArgumentException($"Prefix must be less than {maxLength + 1} characters long.");
                }

                CurrentGuild.General.CommandPrefix = prefix;
                await Guilds.Save(CurrentGuild);

                await ReplyAsync(EmbedHandler.CreateBasicEmbed(ModuleName, $"Prefix has been set to `{prefix}`", Color.Green));
            }
            catch (ArgumentException ex) { await ReplyAsync(EmbedHandler.CreateErrorEmbed(ModuleName, ex.Message)); }
        }
Exemple #26
0
        public async Task Ping()
        {
            var embed = EmbedHandler.CreateEmbed(Context, "Ping",
                                                 $":ping_pong:  **|** Pong! {(Context.Client).Latency}ms", EmbedHandler.EmbedMessageType.Success, false);

            await SendMessage(Context, embed);
        }
Exemple #27
0
        public async Task <Embed> AddToDatabase(PlayersRulesService _playersRulesService, string filename, bool songsOnly)
        {
            List <SongData> data = await JsonHandler.ConvertJson(new FileInfo(filename));

            List <string> rules = await _playersRulesService.GetRules();

            foreach (SongData song in data)
            {
                if (_db.Find <SongTableObject>(MakeSongTableKey(song.anime.english, song.type, song.name)) == null)
                {
                    SongTableObject tableObject = ConvertSongDataToTable(song);
                    await _db.AddAsync(tableObject);
                }
                if (!songsOnly)
                {
                    await UpdatePlayerStats(_playersRulesService, song, rules);
                }
            }
            await _db.SaveChangesAsync();

            Console.WriteLine("Added only songs for this file" + filename);
            File.Move(filename, ArchivedFiles + filename.Substring(filename.LastIndexOf("\\")), true);
            return(await EmbedHandler.CreateBasicEmbed("Data", "All songs from the Json File have" +
                                                       " been added to the Database and player stats were updated", Color.Blue));
        }
Exemple #28
0
        public async Task Kick([NoSelf][RequireBotHigherHirachy] SocketGuildUser Użytkownik)
        {
            await Użytkownik.KickAsync();

            var embed = EmbedHandler.CreateEmbed("Wyrzuciłem użytkownika :boot::boom: " + Użytkownik + " :boot::boom: z serwera!", EmbedHandler.EmbedMessageType.Success);
            await Context.Channel.SendMessageAsync("", false, embed);
        }
Exemple #29
0
        public async Task ClearCommand(int num)
        {
            SocketGuildUser user = (SocketGuildUser)Context.User;

            if (!user.GuildPermissions.ManageMessages)
            {
                var items = await Context.Channel.GetMessagesAsync(1).FlattenAsync();

                await((ITextChannel)Context.Channel).DeleteMessagesAsync(items);
                var m = await ReplyAsync(
                    embed : await EmbedHandler.ErrorEmbed("⚠️ You don't have permission to execute this command!"));

                const int delay = 4000;
                await Task.Delay(delay);

                await m.DeleteAsync();
            }
            else
            {
                IEnumerable <IMessage> messages = await Context.Channel.GetMessagesAsync(num + 1).FlattenAsync();

                await((ITextChannel)Context.Channel).DeleteMessagesAsync(messages);
                const int delay = 2000;
                var       m     = await ReplyAsync(
                    embed : await EmbedHandler.BasicEmbed("Cleaning is complete.", $"{num} have been deleted.", Color.Green));

                await LogService.LogInfoAsync("CLEAN", $"{num} messages have been deleted!");

                await Task.Delay(delay);

                await m.DeleteAsync();
            }
        }
Exemple #30
0
        public async Task AutoRoleRoleAdd([Remainder] string arg = "")
        {
            var guildUser = Context.User as SocketGuildUser;

            if (!guildUser.GuildPermissions.Administrator)
            {
                string description =
                    $"{Global.ENo} **|** You Need the **Administrator** Permission to do that {Context.User.Username}";
                var errorEmbed = EmbedHandler.CreateEmbed(Context, "Error", description,
                                                          EmbedHandler.EmbedMessageType.Exception);
                await ReplyAndDeleteAsync("", embed : errorEmbed);

                return;
            }

            if (arg == null)
            {
                await ReplyAndDeleteAsync("Please include the name of the role you want to autorole");
            }
            var config = GlobalGuildAccounts.GetGuildAccount(Context.Guild.Id);

            config.AutoRole = arg;
            GlobalGuildAccounts.SaveAccounts(Context.Guild.Id);

            var embed = new EmbedBuilder();

            embed.WithDescription($"Added the **{arg}** role to AutoRole!");
            embed.WithColor(Global.NayuColor);
            embed.WithFooter("Make sure that Nayu has a higher role than the autoroled role!");

            await SendMessage(Context, embed.Build());
        }