示例#1
0
文件: UserJoined.cs 项目: Lunerr/FFA
        private Task OnUserJoinedAsync(IGuildUser guildUser)
        => _taskService.TryRun(async() =>
        {
            await _sender.TryDMAsync(guildUser, Config.HELP_MESSAGE, "Welcome to FFA", guild: guildUser.Guild);

            var dbGuild = await _dbGuilds.GetGuildAsync(guildUser.Guild.Id);

            if (!dbGuild.MutedRoleId.HasValue || !await _dbMutes.AnyMuteAsync(guildUser.Id, guildUser.GuildId))
            {
                return;
            }

            var mutedRole = guildUser.Guild.GetRole(dbGuild.MutedRoleId.Value);

            if (mutedRole == null || !await mutedRole.CanUseAsync())
            {
                return;
            }

            await guildUser.AddRoleAsync(mutedRole);
        });