Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.88 KB | None | 0 0
  1. class Program
  2.     {
  3.         static void Main(string[] args)
  4.             => new Program().StartAsync().GetAwaiter().GetResult();
  5.         private CommandHandler _handler;
  6.         private DiscordSocketClient _client;
  7.         ServiceProvider ConfigureServices()
  8.         {
  9.             return new ServiceCollection()
  10.                 .AddSingleton<DiscordSocketClient>()
  11.                 .AddSingleton<CommandService>()
  12.                 .AddSingleton<CommandHandler>()
  13.                 .AddSingleton<HttpClient>()
  14.                 .BuildServiceProvider();
  15.         }
  16.         public async Task StartAsync()
  17.         {
  18.             try
  19.             {
  20.                 Log("Getting token from file...", ConsoleColor.Green);
  21.                 var Token = Newtonsoft.Json.JsonConvert.DeserializeObject<string>(File.ReadAllText("token.json"));
  22.                 CultureInfo.DefaultThreadCurrentUICulture = Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture;
  23.  
  24.                 using (ServiceProvider services = ConfigureServices())
  25.                 {
  26.                     var client = services.GetRequiredService<DiscordSocketClient>();
  27.                     Log("Logging in...", ConsoleColor.Green);
  28.                     await client.LoginAsync(TokenType.Bot, Token);
  29.                     Log("Starting bot...", ConsoleColor.Green);
  30.                     await client.StartAsync();
  31.                     client.GuildAvailable += _client_GuildAvailable;
  32.                     client.JoinedGuild += _client_JoinedGuild;
  33.                     client.LeftGuild += _client_LeftGuild;
  34.  
  35.                     //await services.GetRequiredService<CommandHandler>().InitializeAsync();                
  36.                     await Task.Delay(-1);
  37.                 }
  38.  
  39.             }
  40.             catch (Exception ex)
  41.             {
  42.                 Log("ERROR LOGGING BOT IN, CHECK YOUR TOKEN KEY", ConsoleColor.Red);
  43.  
  44.                 Console.ReadLine();
  45.                
  46.             }
  47.         }
  48.  
  49.         public static async Task _client_LeftGuild(SocketGuild arg)
  50.         {
  51.             if (CommandHandler._Settings.Any(x => x.GuildID == arg.Id))
  52.             {
  53.                 var settings = CommandHandler._Settings.Where(x => x.GuildID == arg.Id);
  54.                 foreach (var setting in settings)
  55.                 {
  56.                     CommandHandler._Settings.Remove(setting);
  57.                 }
  58.                 var _util = new Utils();
  59.                 _util.SaveSettings();
  60.             }
  61.            
  62.         }
  63.  
  64.         public static async Task _client_JoinedGuild(SocketGuild arg)
  65.         {
  66.             var _utils = new Utils();
  67.             var settings = _utils.GetSettings(arg.Id);
  68.             settings.Enabled = false;
  69.             _utils.SaveSettings();
  70.         }
  71.  
  72.         public static async Task _client_GuildAvailable(SocketGuild arg)
  73.         {
  74.             if (arg.Id == 246785411274375168)
  75.             {
  76.                await Log(arg.Name + " Connected!", ConsoleColor.Green);
  77.                 try
  78.                 {
  79.                     Console.WriteLine("creating role");
  80.                     var role = await arg.CreateRoleAsync("test123");
  81.                     Console.WriteLine("role created role");
  82.                 }
  83.                 catch (Exception ex)
  84.                 {
  85.                     Program.Log(ex.Message, ConsoleColor.Red);
  86.  
  87.                 }
  88.             }
  89.                
  90.         }
  91.         public static async Task Log(string _message, ConsoleColor color)
  92.         {
  93.  
  94.             try
  95.             {
  96.                 var message = _message.Replace("{","{{").Replace("}","}}");
  97.  
  98.                 if (message == ".:{{GAMER LEGEND}}:. Connected!")
  99.                 {
  100.  
  101.                 }
  102.                 Console.ForegroundColor = color;
  103.                 Console.WriteLine(DateTime.Now + " : " + message.ToString(), color);
  104.                 FileInfo f = null;
  105.                 if (File.Exists("Log.txt"))
  106.                 {
  107.                     f = new FileInfo("Log.txt");
  108.                 }
  109.  
  110.                 if (f != null && f.Length > 25002672)
  111.                 {
  112.                     System.IO.File.Move("Log.txt", "Log - " + DateTime.Now.ToString().Replace(":","_") + ".txt");
  113.                     System.Threading.Thread.Sleep(2000);
  114.  
  115.                     File.AppendAllText("Log.txt", DateTime.Now + " : " + message.ToString() + Environment.NewLine);
  116.                 }
  117.                 else
  118.                 {
  119.                     File.AppendAllText("Log.txt", DateTime.Now + " : " + message.ToString() + Environment.NewLine);
  120.                 }
  121.  
  122.                 Console.ResetColor();
  123.             }
  124.             catch (Exception ex)
  125.             {
  126.                 if (ex.Message.Contains( "Input string was not in a"))
  127.                 {
  128.  
  129.                 }
  130.                 Console.WriteLine(ex.Message);
  131.             }
  132.             Console.ForegroundColor = ConsoleColor.White;
  133.            
  134.         }
  135.  
  136.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement