Esempio n. 1
0
        internal async Task UserJoinedAsync(SocketGuildUser User)
        {
            var Config = GuildHandler.GetGuild(User.Guild.Id);
            await WebhookService.SendMessageAsync(new WebhookOptions
            {
                Name    = Client.CurrentUser.Username,
                Webhook = Config.JoinWebhook,
                Message = !Config.JoinMessages.Any() ? $"**{User.Username}** is here to rock our world! Yeah, baby!"
                : StringHelper.Replace(Config.JoinMessages[Random.Next(0, Config.JoinMessages.Count)], User.Guild.Name, User.Mention)
            });

            var Role = User.Guild.GetRole(Config.Mod.JoinRole);

            if (Role != null)
            {
                await User.AddRoleAsync(Role).ConfigureAwait(false);
            }
        }
Esempio n. 2
0
        internal async Task MessageDeletedAsync(Cacheable <IMessage, ulong> Cache, ISocketMessageChannel Channel)
        {
            var Config  = GuildHandler.GetGuild((Channel as SocketGuildChannel).Guild.Id);
            var Message = await Cache.GetOrDownloadAsync();

            if (Message == null || Config == null || !Config.Mod.LogDeletedMessages || Message.Author.IsBot)
            {
                return;
            }
            Config.DeletedMessages.Add(new MessageWrapper
            {
                ChannelId = Channel.Id,
                MessageId = Message.Id,
                AuthorId  = Message.Author.Id,
                DateTime  = Message.Timestamp.DateTime,
                Content   = Message.Content ?? Message.Attachments.FirstOrDefault()?.Url
            });
            GuildHandler.Save(Config);
        }
Esempio n. 3
0
 internal Task GuildAvailable(SocketGuild Guild) => Task.Run(() => GuildHandler.AddGuild(Guild.Id, Guild.Name));
Esempio n. 4
0
 internal Task LeftGuild(SocketGuild Guild) => Task.Run(() => GuildHandler.RemoveGuild(Guild.Id, Guild.Name));
Esempio n. 5
0
 internal async Task JoinedGuildAsync(SocketGuild Guild)
 {
     GuildHandler.AddGuild(Guild.Id, Guild.Name);
     await Guild.DefaultChannel.SendMessageAsync(ConfigHandler.Config.JoinMessage ?? "Thank you for inviting me to your server!");
 }