public async Task Run() { m_discordClient = new DiscordSocketClient(); m_discordClient.Log += Log; m_tokenFilePath = Path.Combine(Environment.CurrentDirectory, "assets", "token.txt"); m_apiToken = await File.ReadAllTextAsync(m_tokenFilePath); await m_discordClient.LoginAsync(TokenType.Bot, m_apiToken); await m_discordClient.StartAsync(); m_commandService = new CommandService(); m_commandHandler = new CommandHandler(m_discordClient, m_commandService); // Database ColonyDatabase.Init(); await m_commandHandler.InstallCommandsAsync(); // ColonyManager init ColonyManager.Instance.GlobalInit(m_discordClient); await ColonyManager.Instance.Run(); // await Task.Delay(-1); }
public Task Register() { bool isAlreadyRegistered = false; DiscordUser user = ColonyDatabase.GetUser(Context.User.Username, Context.User.Discriminator); isAlreadyRegistered = (user != null); if (isAlreadyRegistered) { Console.WriteLine("User already registered"); return(ReplyAsync($"{user.UserName} you are already registered in the Colony")); } user = new DiscordUser { UserName = Context.User.Username, Discriminator = Context.User.Discriminator, RegisteredAt = DateTime.Now }; Console.WriteLine("Insert the new user in DB"); ColonyDatabase.InsertDiscordUser(user); return(ReplyAsync($"{user.UserName}#{user.Discriminator} is now a member of the Colony")); }
/* * Helper to get the Colony member from the Command context. */ private ColonyMember GetMemberFromContext(SocketCommandContext _context) { DiscordUser currentUser = ColonyDatabase.GetUser(_context.User.Username, _context.User.Discriminator); if (currentUser == null) { return(null); } ColonyMember member = ColonyManager.Instance.GetColonyMember(currentUser); return(member); }
public Task GetRegisteredUser() { DiscordUser[] users = ColonyDatabase.GetAllUsers(); string response = ""; response += "```"; response += "Colony members :\n"; foreach (DiscordUser discordUser in users) { response += "- " + discordUser.UserName + "\n"; } response += "```"; return(ReplyAsync(response)); }