From 61d57719c2290cab5d8c8ace9791bbb23536a380 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Thu, 11 Mar 2004 20:20:35 +0000 Subject: [PATCH] (feed_people): Simplify. No functional changes. --- src/lib/update/human.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/lib/update/human.c b/src/lib/update/human.c index be0e50379..d30aa3683 100644 --- a/src/lib/update/human.c +++ b/src/lib/update/human.c @@ -187,6 +187,7 @@ int feed_people(register int *vec, int etu, int *needed) { double food_eaten; + int ifood_eaten; int can_eat; int total_people; int to_starve; @@ -194,22 +195,21 @@ feed_people(register int *vec, int etu, int *needed) if (opt_NOFOOD) return 0; - food_eaten = (double)(((double)etu * (double)eatrate) * - (double)(vec[I_CIVIL] + vec[I_MILIT] + - vec[I_UW])); - if (food_eaten <= 1) + + total_people = vec[I_CIVIL] + vec[I_MILIT] + vec[I_UW]; + food_eaten = etu * eatrate * total_people; + ifood_eaten = (int)food_eaten; + if (food_eaten - ifood_eaten > 0) + ifood_eaten++; + if (ifood_eaten <= 1) return 0; starved = 0; *needed = 0; - if (food_eaten > vec[I_FOOD]) { - *needed = food_eaten - vec[I_FOOD]; - if ((double)(*needed) < (double)(food_eaten - (double)vec[I_FOOD])) - (*needed)++; - can_eat = (vec[I_FOOD] / (etu * eatrate)); - total_people = vec[I_CIVIL] + vec[I_MILIT] + vec[I_UW]; - + if (ifood_eaten > vec[I_FOOD]) { + *needed = ifood_eaten - vec[I_FOOD]; + can_eat = vec[I_FOOD] / (etu * eatrate); /* only want to starve off at most 1/2 the populace. */ - if (can_eat < (total_people / 2)) + if (can_eat < total_people / 2) can_eat = total_people / 2; to_starve = total_people - can_eat; -- 2.43.0