Ejemplo n.º 1
0
        public void Consume()
        {
            FoodLevel = 0;

            foreach (ResourceType resourceType in ResourceTypes.resourceTypes)
            {
                double neededAmount = demand.GetDemand(resourceType);
                if (neededAmount == 0)
                {
                    continue;
                }

                double amountInStock = stock.GetAmount(resourceType);

                double ratio = Math.Min(1, amountInStock / neededAmount);
                FoodLevel += ratio * demand.GetLifeValueAdjusted(resourceType);
                stock.Adjust(new Resource(resourceType, -ratio * neededAmount));
            }
        }