static void Main(string[] args) { List <Duck> listDucks = new List <Duck>(); IFlybehaviour fbNW = new FlyNoWay(); IFlybehaviour fww = new FlyWithWings(); MallardDuck md = new MallardDuck(); md.SetFly(fww); RedheadDuck rh = new RedheadDuck(); rh.SetFly(fww); RubberDuck rd = new RubberDuck(); rd.SetFly(fbNW); DecoyDuck dd = new DecoyDuck(); dd.SetFly(fbNW); listDucks.Add(md); listDucks.Add(rh); listDucks.Add(rd); listDucks.Add(dd); foreach (var duck in listDucks) { //duck.Quack(); duck.Swim(); duck.Fly(); } }
static void Main() { //Set variables. Boolean TestForKeys = true; //Create Animals. Duck mallard = new MallardDuck(); Duck rubber = new RubberDuck(); //Show welcome text. Text.WelcomeText(); while (TestForKeys == true) { ConsoleKeyInfo result = Console.ReadKey(); if ((result.KeyChar == 'q') || (result.KeyChar == 'Q')) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\nYou pressed: '" + result.KeyChar + "'. Quitting..."); Console.ResetColor(); Text.GoodbyeText(); TestForKeys = false; System.Threading.Thread.Sleep(5000); Environment.Exit(0); } else if ((result.KeyChar == 'm') || (result.KeyChar == 'M')) { Console.WriteLine("\nYou pressed: '" + result.KeyChar + "'. Going to Mammals."); //Show a MallardDuck. mallard.display(); mallard.performQuack(); mallard.performFly(); Console.WriteLine(); //Show a RubberDuck. rubber.display(); rubber.performQuack(); rubber.performFly(); //Change the fly behaviour of the rubberduck. rubber.setFlyBehaviour(new FlyRocketPowered()); rubber.performFly(); Console.WriteLine(); } else if ((result.KeyChar == 'r') || (result.KeyChar == 'R')) { Console.WriteLine("\nYou pressed: '" + result.KeyChar + "' Going to Reptiles."); //Show Reptiles } else { Console.Write("\nThis This is not a recognized command. Try again: "); } } }
void simulate() { IQuackable mallardDuck = new MallardDuck(); IQuackable redheadDuck = new RedheadDuck(); IQuackable duckCall = new DuckCall(); IQuackable rubberDuck = new RubberDuck(); Console.WriteLine("Duck Simulator"); simulate(mallardDuck); simulate(redheadDuck); simulate(duckCall); simulate(rubberDuck); }
static void Main(string[] args) { Duck mallard = new MallardDuck(); Console.WriteLine($"Mallard duck {new string('.', 50)}"); mallard.Swim(); mallard.PerformFly(); mallard.PerformQuack(); mallard.Display(); Duck crested = new CrestedDuck(); Console.WriteLine($"Crested duck {new string('.', 50)}"); crested.Swim(); crested.PerformFly(); crested.PerformQuack(); crested.Display(); Duck rubber = new RubberDuck(); Console.WriteLine($"Rubber duck {new string('.', 50)}"); rubber.Swim(); rubber.PerformFly(); rubber.PerformQuack(); rubber.Display(); Duck decoy = new DecoyDuck(); Console.WriteLine($"Decoy duck {new string('.', 50)}"); decoy.Swim(); decoy.PerformFly(); decoy.PerformQuack(); decoy.Display(); Console.WriteLine($"Decoy duck amended {new string('.', 50)}"); decoy.Swim(); decoy.FlyBehavior = new FlyWithWings(); decoy.PerformFly(); decoy.PerformQuack(); decoy.Display(); }