コード例 #1
0
        private async Task RunArgumentsAsync(Message message, CommandInfo command, string content)
        {
            var parser = new CommandUsageParser(command, message, content);

            try
            {
                parser.Run();
                await RunCommandAsync(message, command, parser);
            }
            catch (ArgumentException exception)
            {
                await Client.EventHandler.OnCommandArgumentExceptionAsync(message, command.Name, exception);
            }
            catch (Exception exception)
            {
                await Client.EventHandler.OnArgumentErrorAsync(message, command.Name, exception);
            }
        }
コード例 #2
0
        private async Task RunArgumentsAsync(Message message, CommandInfo command, string content)
        {
            var parser = new CommandUsageParser(command, message, content);

            try
            {
                parser.Run();
                await RunCommandAsync(message, command, parser);
            }
            catch (ArgumentException exception)
            {
                await message.SendAsync(Client,
                                        $"Argument Error: {exception.InnerException?.Message ?? exception.Message}");
            }
            catch (Exception exception)
            {
                Console.Error.WriteLine($"[COMMANDS]: {exception.Message}\n{exception.StackTrace}");
                await message.SendAsync(Client, "Whoops! Something while processing arguments!");
            }
        }