public async Task RunBotAsync() { _client = new DiscordSocketClient(); _commands = new CommandService(); _services = new ServiceCollection() .AddSingleton(_client) .AddSingleton(_commands) .BuildServiceProvider(); if (File.Exists(tokenpath)) { //Loads Token in noted directory string token = TXTFileIO.Open(tokenpath); } else { Console.WriteLine("please enter your token"); string token = Console.ReadLine(); } _client.Log += _client_Log; //await BootupLoad(); await RegisterCommandsAsync(); await _client.LoginAsync(TokenType.Bot, token); await _client.StartAsync(); await Task.Delay(-1); }
public static Task BootupLoad() { if (File.Exists(CurrentStatusPath)) { currentroundstatus = TXTFileIO.Open(CurrentStatusPath).First(); switch (currentroundstatus) { case 'O': _client.SetStatusAsync(UserStatus.Online); (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("Set Status to Online"); break; case 'o': _client.SetStatusAsync(UserStatus.Offline); (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("Set Status to Offline"); break; case 'I': _client.SetStatusAsync(UserStatus.Invisible); (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("Set Status to Invisible"); break; case 'i': _client.SetStatusAsync(UserStatus.Idle); (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("Set Status to Idle"); break; case 'D': _client.SetStatusAsync(UserStatus.DoNotDisturb); (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("Set Status to Do Not Disturb"); break; case 'A': _client.SetStatusAsync(UserStatus.AFK); (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("Set Status to AFK"); break; default: break; } } else { (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("round status could not be fetched from file."); } if (File.Exists(StatusSpath)) { _client.SetGameAsync(TXTFileIO.Open(StatusSpath)); currentstatus = TXTFileIO.Open(StatusSpath); (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("status was set to <" + currentstatus + ">"); } else { (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("status could not be fetched from file."); } return(Task.CompletedTask); }
/*public Task OldBootupLoad() * { * SSR = new StateSavingReading(); * if (File.Exists(StatusSpath)) * { * LoadState = SSR.OldOpen(@".\SavedState.xml"); * _client.SetGameAsync(LoadState.status); * (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("status was set to <" + LoadState.status + ">"); * } * else * { * LoadState = new StateAndConfig(); * SSR.OldSave(@".\SavedState.xml", LoadState); * (_client.GetGuild(616333388659556372).GetChannel(802621868560482364) as ITextChannel).SendMessageAsync("no preexisting State Data was found, new config was created"); * } * return Task.CompletedTask; * }*/ public void shutdownroutine() { TXTFileIO.Save(StatusSpath, currentstatus); }