Exemplo n.º 1
0
Arquivo: YuiShard.cs Projeto: HKGx/Yui
        private async Task ClientOnGuildMemberUpdated(GuildMemberUpdateEventArgs args)
        {
            await Task.Yield();

            var tasks = new List <Task>();

            using (var db = new LiteDatabase("Data.db"))
            {
                var guilds = db.GetCollection <Guild>();
                var guild  = guilds.FindOne(x => x.Id == args.Guild.Id);
                if (guild.NightWatchEnabled)
                {
                    tasks.Add(NightWatch.NightWatchUserChange(args));
                }
            }

            await Task.WhenAll(tasks);
        }
Exemplo n.º 2
0
Arquivo: YuiShard.cs Projeto: HKGx/Yui
        //TODO: track invites
        private async Task ClientOnGuildMemberAdded(GuildMemberAddEventArgs args)
        {
            await Task.Yield();

            var tasks = new List <Task>();

            using (var db = new LiteDatabase("Data.db"))
            {
                var guilds = db.GetCollection <Guild>();
                var guild  = guilds.FindOne(x => x.Id == args.Guild.Id);
                if (guild.NightWatchEnabled)
                {
                    tasks.Add(NightWatch.NightWatchUserJoin(args));
                }

                if (guild.AutoRole > 0)
                {
                    tasks.Add(Join.OnJoinAddRole(args, guild.AutoRole));
                }
            }
            tasks.Add(SpecialJoin.OnSpecialJoin(args));
            await Task.WhenAll(tasks);
        }
Exemplo n.º 3
0
Arquivo: YuiShard.cs Projeto: HKGx/Yui
        private async Task MessageCreated(MessageCreateEventArgs args)
        {
            await Task.Yield();

            if (args.Channel.IsPrivate)
            {
                return;
            }
            var tasks = new List <Task>();

            using (var db = new LiteDatabase("Data.db"))
            {
                var guilds = db.GetCollection <Guild>();
                var guild  = guilds.FindOne(x => x.Id == args.Guild.Id);
                if (guild.HandleUsers)
                {
                }
                if (guild.NightWatchEnabled)
                {
                    tasks.Add(NightWatch.NightWatchMessage(args));
                }
            }
            await Task.WhenAll(tasks);
        }