From e092cdf52b1a706b8e599db8837c160d6499e550 Mon Sep 17 00:00:00 2001 From: Enno Rehling Date: Fri, 3 Jan 2003 12:39:03 +0000 Subject: [PATCH] =?UTF-8?q?Bugfix=20besch=C3=A4digte=20Schiffe=20betreten?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/common/kernel/build.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/common/kernel/build.c b/src/common/kernel/build.c index 74c8130be..130912630 100644 --- a/src/common/kernel/build.c +++ b/src/common/kernel/build.c @@ -1119,13 +1119,17 @@ entership(unit * u, ship * sh, const char * cmd, boolean lasttry) #ifdef CHECK_OVERLOAD_ON_ENTER { int sweight, scabins; - getshipweight(sh, &sweight, &scabins); - sweight += weight(u); - scabins += u->number; + int mweight = shipcapacity(sh); + int mcabins = sh->type->cabins; + if (mweight>0 && mcabins>0) { + getshipweight(sh, &sweight, &scabins); + sweight += weight(u); + scabins += u->number; - if (sweight > shipcapacity(sh) || scabins > sh->type->cabins) { - if (lasttry) cmistake(u, cmd, 34, MSG_MOVE); - return false; + if (sweight > mweight || scabins > mcabins) { + if (lasttry) cmistake(u, cmd, 34, MSG_MOVE); + return false; + } } } #endif