Beispiel #1
0
        public void Run()
        {
            IMachinesManager machinesManager = new MachinesManager();
            var inputCommand = Console.ReadLine();

            try
            {
                while (inputCommand != "Quit")
                {
                    var inputCommandList = inputCommand.Split(new string[] { " " }, StringSplitOptions.None).ToList();

                    switch (inputCommandList[0])
                    {
                    case "HirePilot":
                        Write(machinesManager.HirePilot(inputCommandList[1]));
                        break;

                    case "PilotReport":
                        Write(machinesManager.PilotReport(inputCommandList[1]));
                        break;

                    case "ManufactureTank":
                        Write(machinesManager.ManufactureTank(inputCommandList[1], double.Parse(inputCommandList[2]), double.Parse(inputCommandList[3])));
                        break;

                    case "ManufactureFighter":
                        Write(machinesManager.ManufactureFighter(inputCommandList[1], double.Parse(inputCommandList[2]), double.Parse(inputCommandList[3])));
                        break;

                    case "MachineReport":
                        Write(machinesManager.MachineReport(inputCommandList[1]));
                        break;

                    case "AggressiveMode":
                        Write(machinesManager.ToggleFighterAggressiveMode(inputCommandList[1]));
                        break;

                    case "DefenseMode":
                        Write(machinesManager.ToggleTankDefenseMode(inputCommandList[1]));
                        break;

                    case "Engage":
                        Write(machinesManager.EngageMachine(inputCommandList[1], inputCommandList[2]));
                        break;

                    case "Attack":
                        Write(machinesManager.AttackMachines(inputCommandList[1], inputCommandList[2]));
                        break;
                    }
                    inputCommand = Console.ReadLine();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error:{ex.Message}");
            }
        }
Beispiel #2
0
        public void Run()
        {
            var    manager = new MachinesManager();
            var    writer  = new Writer();
            string input   = Console.ReadLine();

            try
            {
                while (input != "Quit")
                {
                    string[] tokens = input.Split();
                    if (tokens[0] == "HirePilot")
                    {
                        writer.Write(manager.HirePilot(tokens[1]));
                    }
                    else if (tokens[0] == "PilotReport")
                    {
                        writer.Write(manager.PilotReport(tokens[1]));
                    }
                    else if (tokens[0] == "ManufactureTank")
                    {
                        writer.Write(manager.ManufactureTank(tokens[1], double.Parse(tokens[2]), double.Parse(tokens[3])));
                    }
                    else if (tokens[0] == "ManufactureFighter")
                    {
                        writer.Write(manager.ManufactureFighter(tokens[1], double.Parse(tokens[2]), double.Parse(tokens[3])));
                    }
                    else if (tokens[0] == "MachineReport")
                    {
                        writer.Write(manager.MachineReport(tokens[1]));
                    }
                    else if (tokens[0] == "AggressiveMode")
                    {
                        writer.Write(manager.ToggleFighterAggressiveMode(tokens[1]));
                    }
                    else if (tokens[0] == "DefenseMode")
                    {
                        writer.Write(manager.ToggleTankDefenseMode(tokens[1]));
                    }
                    else if (tokens[0] == "Engage")
                    {
                        writer.Write(manager.EngageMachine(tokens[1], tokens[2]));
                    }
                    else if (tokens[0] == "Attack")
                    {
                        writer.Write(manager.AttackMachines(tokens[1], tokens[2]));
                    }

                    input = Console.ReadLine();
                }
            }
            catch (Exception ex)
            {
                writer.Write("Error: " + ex.Message);
            }
        }
        private string CommandInterpretator(string[] commands)
        {
            string result = string.Empty;

            if (commands[0] == "HirePilot")
            {
                result = mg.HirePilot(commands[1]);
            }
            else if (commands[0] == "PilotReport")
            {
                result = mg.PilotReport(commands[1]);
            }
            else if (commands[0] == "ManufactureTank")
            {
                string name = commands[1];
                double attc = double.Parse(commands[2]);
                double deff = double.Parse(commands[3]);
                result = mg.ManufactureTank(name, attc, deff);
            }
            else if (commands[0] == "ManufactureFighter")
            {
                string name = commands[1];
                double attc = double.Parse(commands[2]);
                double deff = double.Parse(commands[3]);
                result = mg.ManufactureFighter(name, attc, deff);
            }
            else if (commands[0] == "MachineReport")
            {
                result = mg.MachineReport(commands[1]);
            }
            else if (commands[0] == "AggressiveMode")
            {
                result = mg.ToggleFighterAggressiveMode(commands[1]);
            }
            else if (commands[1] == "DefenseMode")
            {
                result = mg.ToggleTankDefenseMode(commands[1]);
            }
            else if (commands[0] == "Engage")
            {
                string pilotName   = commands[1];
                string machineName = commands[2];
                result = mg.EngageMachine(pilotName, machineName);
            }
            else if (commands[0] == "Attack")
            {
                result = mg.AttackMachines(commands[1], commands[2]);
            }
            return(result);
        }
Beispiel #4
0
        private string Execute(ICommand command)
        {
            try
            {
                switch (command.Name)
                {
                case "HirePilot":
                    var name = command.Params[0];

                    return(manager.HirePilot(name));

                case "PilotReport":
                    name = command.Params[0];

                    return(manager.PilotReport(name));

                case "ManufactureTank":
                    name = command.Params[0];
                    var attack  = double.Parse(command.Params[1]);
                    var defense = double.Parse(command.Params[2]);

                    return(manager.ManufactureTank(name, attack, defense));

                case "ManufactureFighter":
                    name    = command.Params[0];
                    attack  = double.Parse(command.Params[1]);
                    defense = double.Parse(command.Params[2]);

                    return(manager.ManufactureFighter(name, attack, defense));

                case "MachineReport":
                    name = command.Params[0];

                    return(manager.MachineReport(name));

                case "AggressiveMode":
                    name = command.Params[0];

                    return(manager.ToggleFighterAggressiveMode(name));

                case "DefenseMode":
                    name = command.Params[0];

                    return(manager.ToggleTankDefenseMode(name));

                case "Engage":
                    var pilotName   = command.Params[0];
                    var machineName = command.Params[1];

                    return(manager.EngageMachine(pilotName, machineName));

                case "Attack":
                    var attacker = command.Params[0];
                    var defender = command.Params[1];

                    return(manager.AttackMachines(attacker, defender));

                default:
                    return("Invalid command!");
                }
            }

            catch (Exception ex)
            {
                return("Error: " + ex.Message);
            }
        }
Beispiel #5
0
        public void Run()
        {
            var machinesManager = new MachinesManager();

            var writer = new Writer();

            string command = Console.ReadLine();

            try
            {
                while (command != "Quit")
                {
                    if (command.StartsWith("HirePilot"))
                    {
                        string[] name = command.Split().Skip(1).ToArray();

                        writer.Write(machinesManager.HirePilot(name[0]));
                    }
                    else if (command.StartsWith("PilotReport"))
                    {
                        string[] name = command.Split().Skip(1).ToArray();

                        writer.Write(machinesManager.PilotReport(name[0]));
                    }
                    else if (command.StartsWith("ManufactureTank"))
                    {
                        string[] info    = command.Split();
                        string   name    = info[1];
                        double   attack  = double.Parse(info[2]);
                        double   defense = double.Parse(info[3]);

                        writer.Write(machinesManager.ManufactureTank(name, attack, defense));
                    }
                    else if (command.StartsWith("ManufactureFighter"))
                    {
                        string[] info    = command.Split();
                        string   name    = info[1];
                        double   attack  = double.Parse(info[2]);
                        double   defense = double.Parse(info[3]);

                        writer.Write(machinesManager.ManufactureFighter(name, attack, defense));
                    }
                    else if (command.StartsWith("MachineReport"))
                    {
                        string[] name = command.Split().Skip(1).ToArray();

                        writer.Write(machinesManager.MachineReport(name[0]));
                    }
                    else if (command.StartsWith("AggressiveMode"))
                    {
                        string[] name = command.Split().Skip(1).ToArray();

                        writer.Write(machinesManager.ToggleFighterAggressiveMode(name[0]));
                    }
                    else if (command.StartsWith("DefenseMode"))
                    {
                        string[] name = command.Split().Skip(1).ToArray();

                        writer.Write(machinesManager.ToggleTankDefenseMode(name[0]));
                    }
                    else if (command.StartsWith("Engage"))
                    {
                        string[] info        = command.Split();
                        string   pilotName   = info[1];
                        string   machineName = info[2];

                        writer.Write(machinesManager.EngageMachine(pilotName, machineName));
                    }
                    else if (command.StartsWith("Attack"))
                    {
                        string[] info = command.Split();
                        string   attackingMachineName = info[1];
                        string   defendingMachineName = info[2];

                        writer.Write(machinesManager.AttackMachines(attackingMachineName, defendingMachineName));
                    }

                    command = Console.ReadLine();
                }
            }
            catch (Exception ex)
            {
                writer.Write($"Error:{ex.Message}");
            }
        }
Beispiel #6
0
        public void Run()
        {
            while (true)
            {
                string input = Console.ReadLine();

                if (input == "Quit")
                {
                    break;
                }

                string[] tokens  = input.Split();
                string   command = tokens[0];
                try
                {
                    if (command == "HirePilot")
                    {
                        string name = tokens[1];
                        Console.WriteLine(machineManager.HirePilot(name));
                    }
                    else if (command == "PilotReport")
                    {
                        string name = tokens[1];
                        Console.WriteLine(machineManager.PilotReport(name));
                    }
                    else if (command == "ManufactureTank")
                    {
                        string name          = tokens[1];
                        double attackPoints  = double.Parse(tokens[2]);
                        double defensePoints = double.Parse(tokens[3]);
                        Console.WriteLine(machineManager.ManufactureTank(name, attackPoints, defensePoints));
                    }
                    else if (command == "ManufactureFighter")
                    {
                        string name          = tokens[1];
                        double attackPoints  = double.Parse(tokens[2]);
                        double defensePoints = double.Parse(tokens[3]);
                        Console.WriteLine(machineManager.ManufactureFighter(name, attackPoints, defensePoints));
                    }
                    else if (command == "MachineReport")
                    {
                        string name = tokens[1];
                        Console.WriteLine(machineManager.MachineReport(name));
                    }
                    else if (command == "AggressiveMode")
                    {
                        string name = tokens[1];
                        Console.WriteLine(machineManager.ToggleFighterAggressiveMode(name));
                    }
                    else if (command == "DefenseMode")
                    {
                        string name = tokens[1];
                        Console.WriteLine(machineManager.ToggleTankDefenseMode(name));
                    }
                    else if (command == "Engage")
                    {
                        string pilotName   = tokens[1];
                        string machineName = tokens[2];
                        Console.WriteLine(machineManager.EngageMachine(pilotName, machineName));
                    }
                    else if (command == "Attack")
                    {
                        string attackingMachine = tokens[1];
                        string defendingMachine = tokens[2];
                        Console.WriteLine(machineManager.AttackMachines(attackingMachine, defendingMachine));
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"Error: {ex.Message}");
                }
            }
        }
Beispiel #7
0
        public void Run()
        {
            string command = Console.ReadLine();



            while (command != "Quit")
            {
                string[] args = command
                                .Split()
                                .ToArray();

                try
                {
                    if (args.Length == 2)
                    {
                        string currentCommand = args[0];
                        string name           = args[1];

                        switch (currentCommand)
                        {
                        case "HirePilot":
                            Console.WriteLine(machinesManager.HirePilot(name));
                            break;

                        case "PilotReport":
                            Console.WriteLine(machinesManager.PilotReport(name));
                            break;

                        case "MachineReport":
                            Console.WriteLine(machinesManager.MachineReport(name));
                            break;

                        case "AggressiveMode":
                            Console.WriteLine(machinesManager.ToggleFighterAggressiveMode(name));
                            break;

                        case "DefenseMode":
                            Console.WriteLine(machinesManager.ToggleTankDefenseMode(name));
                            break;

                        default:
                            break;
                        }
                    }
                    else if (args.Length == 3)
                    {
                        string currentCommand = args[0];

                        switch (currentCommand)
                        {
                        case "Engage":
                            string pilotName   = args[1];
                            string machineName = args[2];

                            Console.WriteLine(machinesManager.EngageMachine(pilotName, machineName));

                            break;

                        case "Attack":
                            string attackingMachine = args[1];
                            string defendingMachine = args[2];

                            Console.WriteLine(machinesManager.AttackMachines(attackingMachine, defendingMachine));

                            break;

                        default:
                            break;
                        }
                    }
                    else if (args.Length == 4)
                    {
                        string currentCommand = args[0];
                        string name           = args[1];
                        double attack         = double.Parse(args[2]);
                        double defense        = double.Parse(args[3]);

                        switch (currentCommand)
                        {
                        case "ManufactureTank":

                            Console.WriteLine(machinesManager.ManufactureTank(name, attack, defense));

                            break;

                        case "ManufactureFighter":

                            Console.WriteLine(machinesManager.ManufactureFighter(name, attack, defense));
                            break;

                        default:
                            break;
                        }
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"Error:{ex.Message}");
                }


                command = Console.ReadLine();
            }
        }
Beispiel #8
0
        public void Run()
        {
            var    machinesMenager = new MachinesManager();
            string command         = null;

            while ((command = Console.ReadLine()) != "Quit")
            {
                var cmdArgs               = command.Split();
                var operation             = cmdArgs[0];
                var name                  = cmdArgs[1];
                var commandMachineManager = string.Empty;
                try
                {
                    if (operation == "HirePilot")
                    {
                        commandMachineManager = machinesMenager.HirePilot(name);
                    }
                    else if (operation == "PilotReport")
                    {
                        commandMachineManager = machinesMenager.PilotReport(name);
                    }
                    else if (operation == "ManufactureTank")
                    {
                        var attack  = double.Parse(cmdArgs[2]);
                        var defence = double.Parse(cmdArgs[3]);
                        commandMachineManager = machinesMenager.ManufactureTank(name, attack, defence);
                    }
                    else if (operation == "ManufactureFighter")
                    {
                        var attack  = double.Parse(cmdArgs[2]);
                        var defence = double.Parse(cmdArgs[3]);
                        commandMachineManager = machinesMenager.ManufactureFighter(name, attack, defence);
                    }
                    else if (operation == "MachineReport")
                    {
                        commandMachineManager = machinesMenager.MachineReport(name);
                    }
                    else if (operation == "AggressiveMode")
                    {
                        commandMachineManager = machinesMenager.ToggleFighterAggressiveMode(name);
                    }
                    else if (operation == "DefenseMode")
                    {
                        commandMachineManager = machinesMenager.ToggleTankDefenseMode(name);
                    }
                    else if (operation == "Engage")
                    {
                        var machineName = cmdArgs[2];
                        commandMachineManager = machinesMenager.EngageMachine(name, machineName);
                    }
                    else if (operation == "Attack")
                    {
                        var deffMachineName = cmdArgs[2];
                        commandMachineManager = machinesMenager.AttackMachines(name, deffMachineName);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                Console.WriteLine(commandMachineManager);
            }
        }
Beispiel #9
0
        public void Run()
        {
            var manager = new MachinesManager();

            while (true)
            {
                string input = Console.ReadLine();
                if (input == "Quit")
                {
                    break;
                }

                var    commandParts = input.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
                string command      = commandParts[0];
                string s            = string.Empty;
                try
                {
                    switch (command)
                    {
                    case "HirePilot":
                        s = manager.HirePilot(commandParts[1]);
                        break;

                    case "PilotReport":
                        s = manager.PilotReport(commandParts[1]);
                        break;

                    case "ManufactureTank":
                        s = manager.ManufactureTank(commandParts[1],
                                                    double.Parse(commandParts[2]),
                                                    double.Parse(commandParts[3]));
                        break;

                    case "ManufactureFighter":
                        s = manager.ManufactureFighter(commandParts[1],
                                                       double.Parse(commandParts[2]),
                                                       double.Parse(commandParts[3]));
                        break;

                    case "MachineReport":
                        s = manager.MachineReport(commandParts[1]);
                        break;

                    case "AggressiveMode":
                        s = manager.ToggleFighterAggressiveMode(commandParts[1]);
                        break;

                    case "DefenseMode":
                        s = manager.ToggleTankDefenseMode(commandParts[1]);
                        break;

                    case "Engage":
                        s = manager.EngageMachine(commandParts[1],
                                                  commandParts[2]);
                        break;

                    case "Attack":
                        s = manager.AttackMachines(commandParts[1],
                                                   commandParts[2]);
                        break;
                    }

                    Console.WriteLine(s);
                }
                catch (Exception e)
                {
                    Console.WriteLine($"Error: {e.Message}");
                }
            }
        }
Beispiel #10
0
        public void Run()
        {
            MachinesManager manager = new MachinesManager();

            string line = Console.ReadLine();

            while (line != "Quit")
            {
                string[] items  = line.Split();
                string   result = string.Empty;
                try
                {
                    switch (items[0])
                    {
                    case "HirePilot":
                        result = manager.HirePilot(items[1]);
                        break;

                    case "PilotReport":
                        result = manager.PilotReport(items[1]);
                        break;

                    case "ManufactureTank":
                        result = manager.ManufactureTank(items[1], double.Parse(items[2]), double.Parse(items[3]));
                        break;

                    case "ManufactureFighter":
                        result = manager.ManufactureFighter(items[1], double.Parse(items[2]), double.Parse(items[3]));
                        break;

                    case "MachineReport":
                        result = manager.MachineReport(items[1]);
                        break;

                    case "AggressiveMode":
                        result = manager.ToggleFighterAggressiveMode(items[1]);
                        break;

                    case "DefenseMode":
                        result = manager.ToggleTankDefenseMode(items[1]);
                        break;

                    case "Engage":
                        result = manager.EngageMachine(items[1], items[2]);
                        break;

                    case "Attack":
                        result = manager.AttackMachines(items[1], items[2]);
                        break;

                    default:
                        break;
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"Error: {ex.Message}");
                }

                Console.WriteLine(result);

                line = Console.ReadLine();
            }
        }
Beispiel #11
0
        public void Run()
        {
            var input = Console.ReadLine();

            manager = new MachinesManager();

            while (input != "Quit")
            {
                var command = input?
                              .Split();

                if (command?[0] == "HirePilot")
                {
                    Console.WriteLine(manager.HirePilot(command[1]));
                }
                else if (command?[0] == "PilotReport")
                {
                    Console.WriteLine(manager.PilotReport(command[1]));
                }
                else if (command?[0] == "ManufactureTank")
                {
                    Console.WriteLine(manager
                                      .ManufactureTank(command[1],
                                                       double.Parse(command[2]),
                                                       double.Parse(command[3])));
                }
                else if (command?[0] == "ManufactureFighter")
                {
                    Console.WriteLine(manager
                                      .ManufactureFighter(command[1],
                                                          double.Parse(command[2]),
                                                          double.Parse(command[3])));
                }
                else if (command?[0] == "MachineReport")
                {
                    Console.WriteLine(manager
                                      .MachineReport(command[1]));
                }
                else if (command?[0] == "AggressiveMode")
                {
                    Console.WriteLine(manager
                                      .ToggleFighterAggressiveMode(command[1]));
                }
                else if (command?[0] == "DefenseMode")
                {
                    Console.WriteLine(manager
                                      .ToggleTankDefenseMode(command[1]));
                }
                else if (command?[0] == "Engage")
                {
                    Console.WriteLine(manager
                                      .EngageMachine(command[1]
                                                     , command[2]));
                }
                else if (command?[0] == "Attack")
                {
                    Console.WriteLine(manager
                                      .AttackMachines(command[1]
                                                      , command[2]));
                }

                input = Console.ReadLine();
            }
        }
Beispiel #12
0
        public void Run()
        {
            while (true)
            {
                try
                {
                    string input = Console.ReadLine();

                    if (input == "Quit")
                    {
                        break;
                    }

                    List <string> commandInfo = input
                                                .Split()
                                                .ToList();

                    string commandType = commandInfo[0];

                    List <string> parameters = commandInfo.Skip(1).ToList();

                    if (commandType == "HirePilot")
                    {
                        Console.WriteLine(machineManager.HirePilot(parameters[0]));
                    }
                    else if (commandType == "PilotReport")
                    {
                        Console.WriteLine(machineManager.PilotReport(parameters[0]));
                    }
                    else if (commandType == "ManufactureTank")
                    {
                        Console.WriteLine(machineManager.ManufactureTank(parameters[0], double.Parse(parameters[1]), double.Parse(parameters[2])));
                    }
                    else if (commandType == "ManufactureFighter")
                    {
                        Console.WriteLine(machineManager.ManufactureFighter(parameters[0], double.Parse(parameters[1]), double.Parse(parameters[2])));
                    }
                    else if (commandType == "MachineReport")
                    {
                        Console.WriteLine(machineManager.MachineReport(parameters[0]));
                    }
                    else if (commandType == "AggressiveMode")
                    {
                        Console.WriteLine(machineManager.ToggleFighterAggressiveMode(parameters[0]));
                    }
                    else if (commandType == "DefenseMode")
                    {
                        Console.WriteLine(machineManager.ToggleTankDefenseMode(parameters[0]));
                    }
                    else if (commandType == "Engage")
                    {
                        Console.WriteLine(machineManager.EngageMachine(parameters[0], parameters[1]));
                    }
                    else if (commandType == "Attack")
                    {
                        Console.WriteLine(machineManager.AttackMachines(parameters[0], parameters[1]));
                    }
                }
                catch (Exception exp)
                {
                    Console.WriteLine($"Error: {exp.Message}");
                    continue;
                }
            }
        }
Beispiel #13
0
        public void Run()
        {
            IMachinesManager manager = new MachinesManager();



            while (true)
            {
                string input = Console.ReadLine();

                if (input == "Quit")
                {
                    break;
                }

                string[] commandArgs = input.Split();
                string   command     = commandArgs[0];
                string   result      = string.Empty;

                try
                {
                    switch (command)
                    {
                    case "HirePilot":
                        result = manager.HirePilot(commandArgs[1]);
                        break;

                    case "PilotReport":
                        result = manager.PilotReport(commandArgs[1]);
                        break;

                    case "ManufactureTank":
                        result = manager.ManufactureTank(commandArgs[1], double.Parse(commandArgs[2]), double.Parse(commandArgs[3]));
                        break;

                    case "ManufactureFighter":
                        result = manager.ManufactureFighter(commandArgs[1], double.Parse(commandArgs[2]), double.Parse(commandArgs[3]));
                        break;

                    case "MachineReport":
                        result = manager.MachineReport(commandArgs[1]);
                        break;

                    case "AggressiveMode":
                        result = manager.ToggleFighterAggressiveMode(commandArgs[1]);
                        break;

                    case "DefenseMode":
                        result = manager.ToggleTankDefenseMode(commandArgs[1]);
                        break;

                    case "Engage":
                        result = manager.EngageMachine(commandArgs[1], commandArgs[2]);
                        break;

                    case "Attack":
                        result = manager.AttackMachines(commandArgs[1], commandArgs[2]);
                        break;

                    default:
                        break;
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"Error: {ex.Message}");
                }

                Console.WriteLine(result);
            }
        }
Beispiel #14
0
        public void Run()
        {
            var input = string.Empty;

            try
            {
                var machineManager = new MachinesManager();
                while ((input = Console.ReadLine()) != "Quit")
                {
                    var arguments = input.Split(" ", StringSplitOptions.RemoveEmptyEntries);

                    if (input.ToLower().StartsWith("hirepilot"))
                    {
                        var name = arguments[1];
                        Console.WriteLine(machineManager.HirePilot(name));
                    }
                    else if (input.ToLower().StartsWith("pilotreport"))
                    {
                        var name = arguments[1];
                        Console.WriteLine(machineManager.PilotReport(name));
                    }
                    else if (input.ToLower().StartsWith("manufacturetank"))
                    {
                        var name    = arguments[1];
                        var attack  = double.Parse(arguments[2]);
                        var defense = double.Parse(arguments[3]);
                        Console.WriteLine(machineManager.ManufactureTank(name, attack, defense));
                    }
                    else if (input.ToLower().StartsWith("manufacturefighter"))
                    {
                        var name    = arguments[1];
                        var attack  = double.Parse(arguments[2]);
                        var defense = double.Parse(arguments[3]);
                        Console.WriteLine(machineManager.ManufactureFighter(name, attack, defense));
                    }
                    else if (input.ToLower().StartsWith("machinereport"))
                    {
                        var name = arguments[1];
                        Console.WriteLine(machineManager.MachineReport(name));
                    }
                    else if (input.ToLower().StartsWith("aggressivemode"))
                    {
                        var name = arguments[1];
                        Console.WriteLine(machineManager.ToggleFighterAggressiveMode(name));
                    }
                    else if (input.ToLower().StartsWith("defensemode"))
                    {
                        var name = arguments[1];
                        Console.WriteLine(machineManager.ToggleTankDefenseMode(name));
                    }
                    else if (input.ToLower().StartsWith("engage"))
                    {
                        var pilotName   = arguments[1];
                        var machineName = arguments[2];
                        Console.WriteLine(machineManager.EngageMachine(pilotName, machineName));
                    }
                    else if (input.ToLower().StartsWith("attack"))
                    {
                        var attackMachineName  = arguments[1];
                        var defenceMachineName = arguments[2];
                        Console.WriteLine(machineManager.AttackMachines(attackMachineName, defenceMachineName));
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
            }
        }
        public void Run()
        {
            while ((command = Console.ReadLine()) != "Quit")
            {
                result = string.Empty;
                var commandArgs = command.Split();

                switch (commandArgs[0])
                {
                case "HirePilot":
                    try
                    {
                        result = machinesManager.HirePilot(commandArgs[1]);
                    }
                    catch (ArgumentNullException ae)
                    {
                        Console.WriteLine("Error: " + ae.Message);
                    }
                    break;

                case "PilotReport":
                    result = machinesManager.PilotReport(commandArgs[1]);
                    break;

                case "ManufactureTank":
                    try
                    {
                        var attack  = double.Parse(commandArgs[2]);
                        var defense = double.Parse(commandArgs[2]);
                        result = machinesManager.ManufactureTank(commandArgs[1], attack, defense);
                    }
                    catch (ArgumentNullException ane)
                    {
                        Console.WriteLine("Error: " + ane.Message);
                    }
                    break;

                case "ManufactureFighter":
                    try
                    {
                        var attack  = double.Parse(commandArgs[2]);
                        var defense = double.Parse(commandArgs[3]);
                        result = machinesManager.ManufactureFighter(commandArgs[1], attack, defense);
                    }
                    catch (ArgumentNullException ane)
                    {
                        Console.WriteLine("Error: " + ane.Message);
                    }
                    break;

                case "MachineReport":
                    result = machinesManager.MachineReport(commandArgs[1]);
                    break;

                case "AggressiveMode":
                    result = machinesManager.ToggleFighterAggressiveMode(commandArgs[1]);
                    break;

                case "DefenseMode":
                    result = machinesManager.ToggleTankDefenseMode(commandArgs[1]);
                    break;

                case "Engage":
                    try
                    {
                        result = machinesManager.EngageMachine(commandArgs[1], commandArgs[2]);
                    }
                    catch (NullReferenceException nre)
                    {
                        Console.WriteLine("Error: " + nre.Message);
                    }
                    break;

                case "Attack":
                    try
                    {
                        result = machinesManager.AttackMachines(commandArgs[1], commandArgs[2]);
                    }
                    catch (NullReferenceException ex)
                    {
                        Console.WriteLine("Error: " + ex.Message);
                    }

                    break;
                }

                if (!string.IsNullOrEmpty(result))
                {
                    Console.WriteLine(result);
                }
            }
        }
Beispiel #16
0
        public void Run()
        {
            MachinesManager machinesManager = new MachinesManager();

            while (true)
            {
                string input = Console.ReadLine();

                string[] splitedInput = input.Split();
                string   command      = splitedInput[0];

                if (command == "Quit")
                {
                    break;
                }

                if (command == "HirePilot")
                {
                    string name = splitedInput[1];

                    Console.WriteLine(machinesManager.HirePilot(name));
                }
                else if (command == "PilotReport")
                {
                    string name = splitedInput[1];

                    Console.WriteLine(machinesManager.PilotReport(name));
                }
                else if (command == "ManufactureTank")
                {
                    string name    = splitedInput[1];
                    double attack  = double.Parse(splitedInput[2]);
                    double defense = double.Parse(splitedInput[3]);

                    Console.WriteLine(machinesManager.ManufactureTank(name, attack, defense));
                }
                else if (command == "ManufactureFighter")
                {
                    string name    = splitedInput[1];
                    double attack  = double.Parse(splitedInput[2]);
                    double defense = double.Parse(splitedInput[3]);

                    Console.WriteLine(machinesManager.ManufactureFighter(name, attack, defense));
                }
                else if (command == "MachineReport")
                {
                    string name = splitedInput[1];

                    Console.WriteLine(machinesManager.MachineReport(name));
                }
                else if (command == "AggressiveMode")
                {
                    string name = splitedInput[1];

                    Console.WriteLine(machinesManager.ToggleFighterAggressiveMode(name));
                }
                else if (command == "DefenseMode")
                {
                    string name = splitedInput[1];

                    Console.WriteLine(machinesManager.ToggleTankDefenseMode(name));
                }
                else if (command == "Engage")
                {
                    string pilotName   = splitedInput[1];
                    string machineName = splitedInput[2];

                    Console.WriteLine(machinesManager.EngageMachine(pilotName, machineName));
                }
                else if (command == "Attack")
                {
                    string attackingMachineName = splitedInput[1];
                    string defensingMachineName = splitedInput[2];

                    Console.WriteLine(machinesManager.AttackMachines(attackingMachineName, defensingMachineName));
                }
            }
        }
Beispiel #17
0
        public void Run()
        {
            while (true)
            {
                string[] input = Console.ReadLine()
                                 .Split();

                string command = input[0];

                if (command == "Quit")
                {
                    return;
                }

                string output = string.Empty;

                switch (command)
                {
                case "HirePilot":
                    output = machineManager.HirePilot(input[1]);
                    break;

                case "PilotReport":
                    output = machineManager.PilotReport(input[1]);
                    break;

                case "ManufactureTank":
                    output = machineManager.ManufactureTank(input[1], double.Parse(input[2]), double.Parse(input[3]));
                    break;

                case "ManufactureFighter":
                    output = machineManager.ManufactureFighter(input[1], double.Parse(input[2]), double.Parse(input[3]));
                    break;

                case "MachineReport":
                    output = machineManager.MachineReport(input[1]);
                    break;

                case "AggressiveMode":
                    output = machineManager.ToggleFighterAggressiveMode(input[1]);
                    break;

                case "DefenseMode":
                    output = machineManager.ToggleTankDefenseMode(input[1]);
                    break;

                case "Engage":
                    output = machineManager.EngageMachine(input[1], input[2]);
                    break;

                case "Attack":
                    output = machineManager.AttackMachines(input[1], input[2]);
                    break;

                default:
                    break;
                }

                Console.WriteLine(output);
            }
        }
Beispiel #18
0
        public void Run()
        {
            while (true)
            {
                string[] input = Console.ReadLine().Split();

                if (input[0] == "Quit")
                {
                    break;
                }

                string command = input[0];

                string result = "";
                try
                {
                    switch (command)
                    {
                    case "HirePilot":
                        string name = input[1];
                        result = manager.HirePilot(name);
                        break;

                    case "ManufactureTank":
                        name = input[1];
                        double attack  = double.Parse(input[2]);
                        double defense = double.Parse(input[3]);
                        result = manager.ManufactureTank(name, attack, defense);
                        break;

                    case "ManufactureFighter":
                        name    = input[1];
                        attack  = double.Parse(input[2]);
                        defense = double.Parse(input[3]);
                        result  = manager.ManufactureFighter(name, attack, defense);
                        break;

                    case "Engage":
                        name = input[1];
                        string machineName = input[2];
                        result = manager.EngageMachine(name, machineName);
                        break;

                    case "Attack":
                        name        = input[1];
                        machineName = input[2];
                        result      = manager.AttackMachines(name, machineName);
                        break;

                    case "PilotReport":
                        name   = input[1];
                        result = manager.PilotReport(name);
                        break;

                    case "MachineReport":
                        name   = input[1];
                        result = manager.MachineReport(name);
                        break;

                    case "AggressiveMode":
                        name   = input[1];
                        result = manager.ToggleFighterAggressiveMode(name);
                        break;

                    case "DefenseMode":
                        name   = input[1];
                        result = manager.ToggleTankDefenseMode(name);
                        break;

                    default:
                        break;
                    }

                    Console.WriteLine(result);
                }

                catch (Exception ex)
                {
                    Console.WriteLine($"Error:{ex.InnerException.Message}");
                }
            }
        }
Beispiel #19
0
        public void Run()
        {
            var line   = Console.ReadLine();
            var result = "";

            while (line != "Quit")
            {
                var input = line.Split();
                try
                {
                    var cmdType = input[0];

                    switch (cmdType)
                    {
                    case "HirePilot":
                        var name = input[1];
                        result = machinesManager.HirePilot(name);
                        break;

                    case "PilotReport":
                        name   = input[1];
                        result = machinesManager.PilotReport(name);
                        break;

                    case "ManufactureTank":
                        name = input[1];
                        var attack = double.Parse(input[2]);
                        var deff   = double.Parse(input[3]);
                        result = machinesManager.ManufactureTank(name, attack, deff);
                        break;

                    case "ManufactureFighter":
                        name   = input[1];
                        attack = double.Parse(input[2]);
                        deff   = double.Parse(input[3]);
                        result = machinesManager.ManufactureFighter(name, attack, deff);
                        break;

                    case "MachineReport":
                        name   = input[1];
                        result = machinesManager.MachineReport(name);
                        break;

                    case "AggressiveMode":
                        name   = input[1];
                        result = machinesManager.ToggleFighterAggressiveMode(name);
                        break;

                    case "DefenseMode":
                        name   = input[1];
                        result = machinesManager.ToggleTankDefenseMode(name);
                        break;

                    case "Engage":
                        name = input[1];
                        var machineName = input[2];
                        result = machinesManager.EngageMachine(name, machineName);
                        break;

                    case "Attack":
                        machineName = input[1];
                        var secondName = input[2];
                        result = machinesManager.AttackMachines(machineName, secondName);
                        break;

                    default:
                        break;
                    }
                }
                catch (ArgumentNullException ex)
                {
                    Console.WriteLine(ex.Message);
                }
                catch (NullReferenceException ex)
                {
                    Console.WriteLine(ex.Message);
                }

                line = Console.ReadLine();

                Console.WriteLine(string.Join(" ", result));
            }
        }
Beispiel #20
0
        public void Run()
        {
            var machineManager = new MachinesManager();
            var input          = Console.ReadLine();

            while (input != "Quit")
            {
                var inputArgs = input.Split(" ", StringSplitOptions.RemoveEmptyEntries);
                var command   = inputArgs[0];
                var args      = inputArgs.Skip(1).ToArray();
                var result    = string.Empty;
                try
                {
                    switch (command)
                    {
                    case "HirePilot":
                        result = machineManager.HirePilot(args[0]);
                        break;

                    case "PilotReport":
                        result = machineManager.PilotReport(args[0]);
                        break;

                    case "ManufactureTank":
                        result = machineManager.ManufactureTank(args[0], double.Parse(args[1]), double.Parse(args[2]));
                        break;

                    case "ManufactureFighter":
                        result = machineManager.ManufactureFighter(args[0], double.Parse(args[1]), double.Parse(args[2]));
                        break;

                    case "MachineReport":
                        result = machineManager.MachineReport(args[0]);
                        break;

                    case "AggressiveMode":
                        result = machineManager.ToggleFighterAggressiveMode(args[0]);
                        break;

                    case "DefenseMode":
                        result = machineManager.ToggleTankDefenseMode(args[0]);
                        break;

                    case "Engage":
                        result = machineManager.EngageMachine(args[0], args[1]);
                        break;

                    case "Attack":
                        result = machineManager.AttackMachines(args[0], args[1]);
                        break;
                    }

                    Console.WriteLine(result);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Error:" + ex.Message);
                }

                input = Console.ReadLine();
            }
        }
Beispiel #21
0
        public void Run()
        {
            string           input           = Console.ReadLine();
            IMachinesManager machinesManager = new MachinesManager();

            var message = string.Empty;

            while (input != "Quit")
            {
                var args = input.Split(" ");

                try
                {
                    switch (args[0])
                    {
                    case "HirePilot":
                        message = machinesManager.HirePilot(args[1]);
                        Console.WriteLine(message);
                        break;

                    case "PilotReport":
                        message = machinesManager.PilotReport(args[1]);
                        Console.WriteLine(message);
                        break;

                    case "ManufactureTank":
                        message = machinesManager.ManufactureTank(args[1], double.Parse(args[2]), double.Parse(args[3]));
                        Console.WriteLine(message);
                        break;

                    case "ManufactureFighter":
                        message = machinesManager.ManufactureFighter(args[1], double.Parse(args[2]), double.Parse(args[3]));
                        Console.WriteLine(message);
                        break;

                    case "MachineReport":
                        message = machinesManager.MachineReport(args[1]);
                        Console.WriteLine(message);
                        break;

                    case "AggressiveMode":
                        message = machinesManager.ToggleFighterAggressiveMode(args[1]);
                        Console.WriteLine(message);
                        break;

                    case "DefenseMode":
                        message = machinesManager.ToggleTankDefenseMode(args[1]);
                        Console.WriteLine(message);
                        break;

                    case "Engage":
                        message = machinesManager.EngageMachine(args[1], args[2]);
                        Console.WriteLine(message);
                        break;

                    case "Attack":
                        message = machinesManager.AttackMachines(args[1], args[2]);
                        Console.WriteLine(message);
                        break;
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"Error:{ex.InnerException.Message}");
                }


                input = Console.ReadLine();
            }
        }