public void CreateCar(CarManufactures manufacture, string color, string[] features, CarModels model) { Car newCar = null; CarType carType = null; TypeFactory typeFactory = new TypeFactory(); carType = typeFactory.GetCarType(manufacture, model); switch (manufacture) { case CarManufactures.Suzuki: newCar = new Car(carType, color, 100000); newCar.AddFeatures(features, manufacture); break; case CarManufactures.Ford: newCar = new Car(carType, color, 250000); newCar.AddFeatures(features, manufacture); break; case CarManufactures.Swift: newCar = new Car(carType, color, 90000); newCar.AddFeatures(features, manufacture); break; case CarManufactures.Nissan: newCar = new Car(carType, color, 350000); newCar.AddFeatures(features, manufacture); break; case CarManufactures.Toyota: newCar = new Car(carType, color, 200000); newCar.AddFeatures(features, manufacture); break; case CarManufactures.Volkswagen: newCar = new Car(carType, color, 400000); newCar.AddFeatures(features, manufacture); break; } Console.WriteLine("Car was created:\n \nManufacturer:\t" + newCar.carType.Name + "\nModel:\t" + newCar.carType.Model + "\n Color:\t" + newCar.Color + "\nPrice of car:\t" + newCar.Price + "\n Total Price(with features):\t" + newCar.totalCost); }