(max_population): Fix for opt_RES_POP and d_maxpop != 999.
This commit is contained in:
parent
ff67d93711
commit
d5d8028ad1
1 changed files with 12 additions and 10 deletions
|
@ -44,23 +44,25 @@ int
|
|||
max_population(float research, int desig, int eff)
|
||||
{
|
||||
int maxpop = dchr[desig].d_maxpop;
|
||||
|
||||
if (opt_RES_POP) {
|
||||
/* research limits maximum population */
|
||||
maxpop = maxpop * 0.4
|
||||
+ maxpop * 0.6 * (50.0 + 4.0*research) / (200.0 + 3.0*research);
|
||||
if (maxpop > 999)
|
||||
maxpop = 999;
|
||||
}
|
||||
int rmax;
|
||||
|
||||
if (opt_BIG_CITY) {
|
||||
/* city efficiency limits maximum population */
|
||||
if (dchr[desig].d_pkg == UPKG)
|
||||
maxpop *= 1 + 9.0 * eff / 100;
|
||||
if (CANT_HAPPEN(maxpop > 9999))
|
||||
maxpop = 9999;
|
||||
}
|
||||
|
||||
if (opt_RES_POP) {
|
||||
/* research limits maximum population */
|
||||
rmax = maxpop * 0.4
|
||||
+ maxpop * 0.6 * (50.0 + 4.0*research) / (200.0 + 3.0*research);
|
||||
if (maxpop > rmax)
|
||||
maxpop = rmax;
|
||||
}
|
||||
|
||||
if (CANT_HAPPEN(maxpop > ITEM_MAX))
|
||||
maxpop = ITEM_MAX;
|
||||
|
||||
return maxpop;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue