Exemple #1
0
        private void Setup()
        {
            if (!File.Exists(DiscordConfigPath))
            {
                var cfg = new Configuration.DiscordConfiguration()
                {
                    Name   = string.Empty,
                    Token  = string.Empty,
                    Prefix = string.Empty
                };
                JsonStorage.StoreObject(cfg, DiscordConfigPath);

                foreach (var property in JObject.Parse(JsonConvert.SerializeObject(cfg)))
                {
                    Console.WriteLine($"Set Discord {property.Key}:");
                    JsonStorage.SetValue(DiscordConfigPath, property.Key, Console.ReadLine());
                }
            }
            //QuotesModule.Init("Config/Quotes");
        }
Exemple #2
0
        public async Task RunAsync()
        {
            Setup();

            var discordConfig = await JsonStorage.RestoreObjectAsync <Configuration.DiscordConfiguration>(DiscordConfigPath);

            var config = new DiscordConfiguration
            {
                Token           = discordConfig.Token,
                TokenType       = TokenType.Bot,
                AutoReconnect   = true,
                MinimumLogLevel = LogLevel.Debug
            };

            Client                 = new DiscordClient(config);
            Client.Ready          += OnClientReady;
            Client.MessageCreated += OnMessageCreated;
            Client.GuildAvailable += OnGuildAvailable;

            Client.UseInteractivity(new InteractivityConfiguration());

            var commandsConfig = new CommandsNextConfiguration
            {
                StringPrefixes      = new string[] { discordConfig.Prefix },
                EnableMentionPrefix = false,
                EnableDms           = true,
                CaseSensitive       = false,
                Services            = GetServiceProvider()
            };

            Commands = Client.UseCommandsNext(commandsConfig);
            Commands.CommandErrored  += OnCommandErrored;
            Commands.CommandExecuted += OnCommandExecuted;
            Commands.RegisterCommands <UnsortedCommands>();

            await Client.ConnectAsync(new DiscordActivity("like a Gucci", ActivityType.Playing));

            await Task.Delay(-1);
        }