Deliver fails to abandon sectors when it ships out all civilians and
military. The sector remains owned until the next non-update sector
update abandons it. Has always been broken.
Distribution had the same bug until commit
d0f3847 (v4.3.20) fixed it.
Fix it the same way for delivery: adjust the amount moved to avoid
moving out the last civilian, or the last military if there are no
civilians.
Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
Note that delivery thresholds are stored as multiples of 8. If you
specify a threshold that is not a multiple of 8, it will be rounded down.
.s1
+Delivery will not ship out the last civilian or the last military if
+there are no civilians, regardless of thresholds.
+.s1
The direction must be specified as one of the six direction characters,
(usually `y' `u' `j' `n' `b' or `g'), the \*Qno-direction\*U character,
(usually `h'). If no direction is specified, then the direction will
* deliver.c: Deliver commodities to neighboring sector
*
* Known contributors to this file:
- *
+ * Markus Armbruster, 2004-2016
*/
#include <config.h>
return 0;
}
}
+ /* make sure not to abandon the sector */
+ if (vtype == I_CIVIL || (vtype == I_MILIT && !to->sct_item[I_CIVIL]))
+ amt_moved--;
/*
* disallow delivery into prohibited sectors.
* calculate unit movement cost; decrease amount if