From a71ec1459d74f771a6a044d8f61dd3f01e3c2943 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sat, 8 Dec 2007 14:36:54 +0000 Subject: [PATCH] (status): Round money before checking solvency, and consistently treat $0 as solvent. Before, you became bankrupt / solvent when your money went below / above zero before rounding, but not when you hit zero exactly. --- src/lib/player/player.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib/player/player.c b/src/lib/player/player.c index ff5d5b0b..054c13ef 100644 --- a/src/lib/player/player.c +++ b/src/lib/player/player.c @@ -170,17 +170,17 @@ status(void) pr("That just cost you $%.2f\n", player->dolcost); else if (player->dolcost < -100.0) pr("You just made $%.2f\n", -player->dolcost); - if (natp->nat_money < player->dolcost && !player->broke) { + natp->nat_money -= roundavg(player->dolcost); + player->dolcost = 0.0; + if (natp->nat_money < 0 && !player->broke) { player->broke = 1; player->nstat &= ~MONEY; pr("You are now broke; industries are on strike.\n"); - } else if (player->broke && natp->nat_money - player->dolcost > 0) { + } else if (player->broke && natp->nat_money >= 0) { player->broke = 0; player->nstat |= MONEY; pr("You are no longer broke!\n"); } - natp->nat_money -= roundavg(player->dolcost); - player->dolcost = 0.0; getsect(natp->nat_xcap, natp->nat_ycap, §); if (influx(natp)) player->nstat &= ~CAP;