message: Improve logic of waste processing loop
diff: @@ -346,16 +346,26 @@ void MapViewState::updateBiowasteRecycling()
  {
  int count = 0;
  - // Consider a different control path
  - if (!recyclingFacility->operational()) { continue; }
  + if (!recyclingFacility->operational()) { continue; } // Consider a different control structure
  +
  + Recycling* recycling = static_cast<Recycling*>(recyclingFacility);
  for (; residenceIterator != residences.end(); ++residenceIterator)
  {
  Residence* residence = static_cast<Residence*>(*residenceIterator);
  - residence->pullWaste(30);
  + residence->pullWaste(recycling->wasteProcessingCapacity());
  +
  ++count;
  - if (count >= 10) { break; }
  +
  + if (count >= recycling->residentialSupportCount())
  + {
  + break;
  + }
  }
  +
  + // We got to the end of the residence list, don't waste time iterating over
  + // any remaining recycling facilities.
  + if (residenceIterator == residences.end()) { break; }
  }
  }
  