Beispiel #1
0
 public RubberDuck(IQuacking quacking, IFlying flying)
 {
     {
         Quacking = quacking;
         Flying   = flying;
     }
 }
Beispiel #2
0
        public static void CollectInput(Farm farm, IQuacking duck, bool clear = true)
        {
            bool allFull = farm.DuckHouses.All(field => field.AnimalCount == field.Capacity);

            if (allFull)
            {
                Console.WriteLine("No facilities available, press enter to continue");
                Console.ReadLine();
            }
            while (!allFull)
            {
                Utils.Clear();
                if (farm.DuckHouses.Count < 1)
                {
                    Console.WriteLine("Facility doesn't exist for selected animal.");
                    Console.WriteLine("Press return key to go back to main menu.");
                    Console.ReadLine();
                    Utils.Clear();
                }
                else
                {
                    for (int i = 0; i < farm.DuckHouses.Count; i++)
                    {
                        Console.Write($"{i + 1}. Duck House: Total: {farm.DuckHouses[i].AnimalCount} of {farm.DuckHouses[i].Capacity} (");
                        farm.DuckHouses[i].listDucks();
                        Console.WriteLine(")");
                    }

                    Console.WriteLine();

                    // How can I output the type of animal chosen here?
                    Console.WriteLine($"Place the animal where?");

                    Console.Write("> ");

                    try
                    {
                        int choice = Int32.Parse(Console.ReadLine());
                        if (farm.DuckHouses[choice - 1].AnimalCount < farm.DuckHouses[choice - 1].Capacity)
                        {
                            farm.DuckHouses[choice - 1].AddResource(duck);
                            break;
                        }
                        else
                        {
                            Console.WriteLine("This facility is full, please choose another one");
                            Console.WriteLine("Press enter to continue");
                            Console.ReadLine();
                        }
                    }
                    catch (Exception)
                    {
                        Console.WriteLine("Wrong input, please chose another.");
                        Console.WriteLine("Press enter to continue");
                        Console.ReadLine();
                    }
                }
            }
        }
Beispiel #3
0
        public IDuck Create(FlyType fly, QuackType quack, SwimType swim)
        {
            IFlying   flying   = _fly.Create(fly);
            IQuacking quacking = _quack.Create(quack);
            ISwimming swimming = _swim.Create(swim);

            return(new UniversalDuck(flying, quacking, swimming));
        }
Beispiel #4
0
 public Penguin(ISwimming swim, IQuacking quack, IFlying fly)
 {
     swim_  = swim;
     quack_ = quack;
     fly_   = fly;
 }
 public Rubber(ISwimming swim, IQuacking quack, IFlying fly)
 {
     swim_  = swim;
     quack_ = quack;
     fly_   = fly;
 }
Beispiel #6
0
 public UniversalDuck(IFlying fly, IQuacking quack, ISwimming swim) : base(fly, quack, swim)
 {
 }
Beispiel #7
0
 public WildDuck(IFlying flying, IQuacking quacking)
 {
     Flying   = flying;
     quacking = Quacking;
 }
Beispiel #8
0
 public WildDuck()
 {
     Flying   = new Flying();
     Quacking = new Quacking();
 }
Beispiel #9
0
 public Mallarrd(ISwimming swim, IQuacking quack, IFlying fly)
 {
     swim_  = swim;
     quack_ = quack;
     fly_   = fly;
 }
Beispiel #10
0
 protected BaseDuck(IFlying fly, IQuacking quack, ISwimming swim)
 {
     _fly   = fly ?? throw new ArgumentNullException();
     _swim  = swim ?? throw new ArgumentNullException();
     _quack = quack ?? throw new ArgumentNullException();
 }