public void AddChickenHouse(ChickenHouse field) { ChickenHouses.Add(field); Console.WriteLine("Chicken House has been added"); Console.WriteLine("Press enter key to continue"); Console.ReadLine(); }
public void AddChickenHouse(ChickenHouse coop) { ChickenHouses.Add(coop); Console.WriteLine("Chicken House Added"); Console.WriteLine("Press enter to return to Main Menu"); Console.ReadLine(); }
public static void CollectInput(Farm farm) { List <IList> list = farm.CreateFacilitiesList(); for (int i = 0; i < list.Count; i++) { if (list[i][0].GetType().Name != "GrazingField" && list[i][0].GetType().Name != "ChickenHouse") { list.RemoveAt(i); i--; } } Console.WriteLine("Select facility type for processing"); for (int i = 0; i < list.Count; i++) { Console.WriteLine($"{i + 1} {list[i][0].GetType().Name}"); } int choice = Convert.ToInt32(Console.ReadLine()); List <GrazingField> grazingAnimalsWithMeat = new List <GrazingField>(); foreach (var item in list[choice - 1]) { if (item.GetType().Name == "GrazingField") { GrazingField grazingFieldToCheck = (GrazingField)(item); foreach (var animal in grazingFieldToCheck.AnimalsCount) { if (animal is IMeatProducing) { grazingAnimalsWithMeat.Add(grazingFieldToCheck); break; } } } else if (item.GetType().Name == "ChickenHouse") { ChickenHouse datThing = (ChickenHouse)(item); } } Console.WriteLine("Select which facility for processing"); for (int i = 0; i < grazingAnimalsWithMeat.Count; i++) { Console.WriteLine($"{i + 1}: {grazingAnimalsWithMeat[i]}"); } int facilityChoice = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("How Many?"); int amountToProcess = Convert.ToInt32(Console.ReadLine()); for (int i = 0; i < grazingAnimalsWithMeat[facilityChoice].AnimalsCount.Count; i++) { // if(AnimalsCount[i] is Cow){ // //store all the animals in a hashset . display all the animals for our choices. match the hashset key for the type we decide to // //to delete. // } } }
// Generates report for all facilities purchased public override string ToString() { StringBuilder report = new StringBuilder(); GrazingFields.ForEach(gf => report.Append(gf)); PlowedFields.ForEach(pf => report.Append(pf)); NaturalFields.ForEach(nf => report.Append(nf)); ChickenHouse.ForEach(ch => report.Append(ch)); DuckHouses.ForEach(dh => report.Append(dh)); return(report.ToString()); }
public Farm() { FileHandler = new FileHandler(); SeedHarvester = new SeedHarvester(FileHandler); Composter = new Composter(FileHandler); MeatProcessor = new MeatProcessor(FileHandler); FeatherGatherer = new FeatherGatherer(FileHandler); EggGatherer = new EggGatherer(FileHandler); FileHandler.Facilities.ForEach(fac => { IFacility newFacility = null; string[] facilityData = fac.Split(":"); string type = facilityData[0]; string name = facilityData[1]; string data = facilityData[2]; switch (type) { case "Chicken House": newFacility = new ChickenHouse(name, data); break; case "Duck House": newFacility = new DuckHouse(name, data); break; case "Grazing Field": newFacility = new GrazingField(name, data); break; case "Plowed Field": newFacility = new PlowedField(name, data); break; case "Natural Field": newFacility = new NaturalField(name, data); break; default: throw new Exception("Invalid data"); } Facilities.Add(newFacility); }); }
public static void CollectChickenInput(ChickenHouse Chickenhouse) { Utils.Clear(); Console.WriteLine("The following animals are in the Chicken House.\n"); Console.WriteLine($"1. {Chickenhouse.AnimalCount()}"); Console.WriteLine("\nHow many Chickens should be processed?"); Console.Write("> "); var parsedChoice = int.Parse(Console.ReadLine()); while (true) { for (int i = 0; i < parsedChoice; i++) { Chickenhouse.Animals.Remove(Chickenhouse.Animals[Chickenhouse.Animals.Count - i - 1]); } break; } }
public static void CollectInput(Farm farm, Chicken chicken) { Console.Clear(); ChickenHouse anyHouseWithRoom = farm.ChickenHouses.Find(ch => ch.CurrentCapacity < ch.MaxCapacity); if (anyHouseWithRoom != null) { for (int i = 0; i < farm.ChickenHouses.Count; i++) { ChickenHouse currentHouse = farm.ChickenHouses[i]; if (currentHouse.CurrentCapacity < currentHouse.MaxCapacity) { Console.WriteLine($"{i + 1}. {currentHouse}"); } } Console.WriteLine(); // How can I output the type of plant chosen here? if (UserTriedToSelectAFullFacility) { Console.WriteLine("That facility is already full."); } Console.WriteLine($"Place the Chicken where?"); Console.Write("> "); int choice = Int32.Parse(Console.ReadLine()) - 1; farm.ChickenHouses[choice].AddResource(farm, chicken); } else { PurchaseStock.ThereIsNoRoomForTheAnimalBeingPurchased = true; Program.DisplayBanner(); PurchaseStock.CollectInput(farm); } /* * Couldn't get this to work. Can you? * Stretch goal. Only if the app is fully functional. */ // farm.PurchaseResource<IGrazing>(animal, choice); }
public static void CollectInput(Farm farm, IResource animal) { Console.Clear(); for (int i = 0; i < farm.ChickenHouses.Count; i++) { if (farm.ChickenHouses[i].Chickens.Count < farm.ChickenHouses[i].Capacity) { ChickenHouse specificHouse = farm.ChickenHouses[i]; Console.WriteLine($"{i + 1}. {specificHouse}"); } } 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()) - 1; farm.ChickenHouses[choice].AddResource(animal); } catch (ArgumentOutOfRangeException ex) { Console.WriteLine(ex); } /* * Couldn't get this to work. Can you? * Stretch goal. Only if the app is fully functional. */ // farm.PurchaseResource<IGrazing>(animal, choice); }
public static void CollectInput(Farm farm, IHousing animal) { Console.Clear(); for (int i = 0; i < farm.ChickenHouses.Count; i++) { ChickenHouse house = farm.ChickenHouses[i]; if (house.Capacity > 0) { Console.WriteLine($"{i + 1}. Chicken House"); Console.Write($"Current animals: {house.GetList().Count}"); Console.WriteLine(); } } if (farm.ChickenHouses.Count >= 1) { Console.WriteLine(); // How can I output the type of animal chosen here? Console.WriteLine($"Place the animal where?"); Console.Write("> "); int choice = Int32.Parse(Console.ReadLine()); int index = choice - 1; farm.ChickenHouses[index].AddResource(animal); } else { Console.WriteLine("No Field to select from, Please purchase an appropriate facility. "); Console.ReadLine(); } /* * Couldn't get this to work. Can you? * Stretch goal. Only if the app is fully functional. */ // farm.PurchaseResource<IGrazing>(animal, choice); }
public void AddChickenHouse(ChickenHouse field) { ChickenHouses.Add(field); Console.WriteLine("Chicken house successfully created"); Thread.Sleep(1500); }
public void AddChickenHouse(ChickenHouse chickenHouse) { ChickenHouses.Add(chickenHouse); }
public static void ListResources(Farm farm, string id, string type) { IEnumerable <ChickenHouse> CorrectHouseEnumerable = from house in farm.ChickenHouses where house.ShortId == id select house; List <ChickenHouse> CorrectHouseList = CorrectHouseEnumerable.ToList(); ChickenHouse CorrectHouse = CorrectHouseList[0]; IEnumerable <ChickenHouseReport> OrderedChickens = (from chicken in CorrectHouse.animalsList group chicken by chicken.Type into NewGroup select new ChickenHouseReport { AnimalType = NewGroup.Key, Number = NewGroup.Count().ToString() } ); List <ChickenHouseReport> ChickenList = OrderedChickens.ToList(); int count = 1; Console.WriteLine(); Console.WriteLine("The following is in the Chicken House:"); Console.WriteLine(); foreach (ChickenHouseReport chicken in ChickenList) { Console.WriteLine($"{count}: {chicken.Number} {chicken.AnimalType}"); count++; } Console.WriteLine(); Console.WriteLine("Which resource should be processed?"); Console.Write("> "); int choice = Int32.Parse(Console.ReadLine()); int correctedChoice = choice - 1; string AnimalType = ChickenList[correctedChoice].AnimalType; Console.WriteLine($"How many {AnimalType} should be processed? (Max 7)"); int amountToProcess = Int32.Parse(Console.ReadLine()); if (amountToProcess > 7) { Console.WriteLine("Learn to read, dumbass"); amountToProcess = Int32.Parse(Console.ReadLine()); } if (amountToProcess <= 5) { farm.ProcessingList.Add(new ToProcess { FacilityId = CorrectHouse.ShortId, Type = AnimalType, AmountToProcess = amountToProcess }); Console.WriteLine("Ready to process? (Y/n)"); Console.Write("> "); string input = Console.ReadLine(); switch (input) { case "Y": break; case "n": ChooseMeatProcessor.CollectInput(farm); break; default: break; } } }
public void AddChickenHouse(ChickenHouse house) { ChickenHouses.Add(house); Console.WriteLine("Chicken House created successfully!"); Console.WriteLine(ChickenHouses[ChickenHouses.Count - 1]); }
public void AddChickenHouse(ChickenHouse coop) { ChickenHouses.Add(coop); }
public void AddChickenHouse(ChickenHouse field) => ChickenHouse.Add(field);
public void AddChickenHouse(ChickenHouse house) { ChickenHouses.Add(house); Console.WriteLine("A new chicken house has been created."); Thread.Sleep(2000); }
public void AddChickenHouse(ChickenHouse chicken) { ChickenHouse.Add(chicken); Console.WriteLine("Your chicken coop has been purchased."); }
public void AddChickenHouse(ChickenHouse house) { ChickenHouses.Add(house); // Confirmation System.Console.WriteLine($"{house} has been added"); }
public void AddChickenHouse(ChickenHouse house) { ChickenHouses.Add(house); Console.WriteLine($"New Chicken House has been created!"); Console.ReadLine(); }
public void AddChickenHouse(ChickenHouse field) { ChickenHouses.Add(field); }
public void AddChickenHouse(ChickenHouse house) { ChickenHouses.Add(house); AvailableChickenHouses.Add(house); }
public void AddChickenHouse(ChickenHouse house) { ChickenHouses.Add(house); }
public void AddChickenHouse(ChickenHouse chickenHouse) { ChickenHouseList.Add(chickenHouse); FacilityList.Add(chickenHouse); }
public void AddChickenHouse(ChickenHouse house) { ChickenHouses.Add(house); Console.WriteLine("You have added a chicken house!"); }
public void AddChickenHouse(ChickenHouse coup) { ChickenHomes.Add(coup); }