private async Task Run() { _client.Log += a => { Console.WriteLine(a); return(Task.CompletedTask); }; _client.MessageDeleted += new DeleteEcho(_log).MessageDeletedAsync; _client.MessageReceived += EchoCommand.MessageReceivedAsync; var games = new GamesCommand(); _client.MessageReceived += games.MessageReceivedAsync; _client.SlashCommandExecuted += games.SlashCommandExecuted; _client.MessageReceived += HelpCommand.MessageReceivedAsync; _client.SlashCommandExecuted += PronounCommand.SlashCommandExecuted; _client.MessageReceived += new MemberizerCommand(_log).MessageReceivedAsync; var tmpBan = new TmpBan(); _client.SlashCommandExecuted += tmpBan.SlashCommandExecuted; _client.MessageReceived += new TimingThing(tmpBan, _log).MessageReceivedAsync; _client.MessageReceived += _log.MessageReceivedAsync; _client.MessageUpdated += _log.MessageUpdatedAsync; _client.MessageReceived += TwitterBonker.MessageReceivedAsync; await _client.LoginAsync(TokenType.Bot, Config.token); await _client.StartAsync(); _client.Ready += async() => { var acegikmo = _client.GetGuild(ACEGIKMO_SERVER); var commands = await acegikmo.BulkOverwriteApplicationCommandAsync( GamesCommand.Commands .Concat(PronounCommand.Commands) .Concat(TmpBan.Commands) .ToArray() ); }; // Block the program until it is closed. await Task.Delay(-1); }
public TimingThing(TmpBan tmpBan, Log log) { _tmpBan = tmpBan; _log = log; SetNextUpdate(); }