Пример #1
0
        private void UpdateProductionOnFacility(List <Facility> myProductionFacilities)
        {
            Facility    chosenFacility = null;
            VehicleType chosenType     = VehicleType.Ifv;

            foreach (var facility in myProductionFacilities)
            {
                var freeUnitsOnFacility = FreeUnitsOnFacilities[facility].Count();
                var isWaitingForOrder   = freeUnitsOnFacility == 0 || freeUnitsOnFacility > MaxUnitsForNewSquad;
                if (isWaitingForOrder)
                {
                    var requiredType = GetRequiredUnitsType();
                    if (requiredType != facility.VehicleType)
                    {
                        chosenFacility = facility;
                        chosenType     = requiredType;
                        break;
                    }
                }
            }

            if (chosenFacility == null)
            {
                return;
            }

            ActionList.ActionProductionStart(chosenFacility, chosenType);
        }