budget: Fix level prod. forecast when required level is too low

When the required level is too low for production, produce() returns
early.  Except when simulating.  Messed up when Empire 3 made the
update code work for budget.

This can make budget show level production even when it's not actually
possible.  In the stock game, this can happen for tech and research,
which require education > 5.0.

Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
This commit is contained in:
Markus Armbruster 2016-06-05 12:15:58 +02:00
parent fdde783278
commit 55dcbaa8da
3 changed files with 8 additions and 9 deletions

View file

@ -96,7 +96,8 @@ produce(struct natstr *np, struct sctstr *sp, int *cost)
return 0;
prodeff = prod_eff(sp->sct_type, np->nat_level[product->p_nlndx]);
if (prodeff <= 0.0 && !player->simulation) {
if (prodeff <= 0.0) {
if (!player->simulation)
wu(0, sp->sct_own,
"%s level too low to produce in %s (need %d)\n",
levelnames[product->p_nlndx], ownxy(sp), product->p_nlmin);

View file

@ -1,6 +1,5 @@
budget
| BUG: stopped city pays no maintenance
| BUG: tech despite insufficient edu
| TODO is it accurate?
production *
| TODO is it accurate?

View file

@ -317,18 +317,17 @@
Play#4 input budget
Play#4 command budget
Play#4 output Play#4 1 Sector Type Production Cost
Play#4 output Play#4 1 technical center 0 tech 300
Play#4 output Play#4 1 bank 4 bars 40
Play#4 output Play#4 1 Ship maintenance 10 ships 300
Play#4 output Play#4 1 Unit maintenance 10 units 600
Play#4 output Play#4 1 Military payroll 1110 mil, 0 res 5552
Play#4 output Play#4 1 Total expenses......................................................6792
Play#4 output Play#4 1 Total expenses......................................................6492
Play#4 output Play#4 1 Income from taxes 23604 civs, 4100 uws +212
Play#4 output Play#4 1 Income from bars 100 bars +1500
Play#4 output Play#4 1 Total income.......................................................+1712
Play#4 output Play#4 1 Balance forward 25000
Play#4 output Play#4 1 Estimated delta -5080
Play#4 output Play#4 1 Estimated new treasury.............................................19920
Play#4 output Play#4 1 Estimated delta -4780
Play#4 output Play#4 1 Estimated new treasury.............................................20220
Play#4 output Play#4 6 0 99
Play#4 input production *
Play#4 command production