From: Markus Armbruster Date: Fri, 15 Jan 2021 07:16:13 +0000 (+0100) Subject: work: Don't let embarked engineers work X-Git-Tag: v4.4.1~23 X-Git-Url: http://git.pond.sub.org/?p=empserver;a=commitdiff_plain;h=e23e4cd73890ff764b68e4062cc589b7a6a1e2d5 work: Don't let embarked engineers work Engineers can work even when loaded on a ship or land unit. They happily raise sea sector efficiency. That's just wrong. It's questionable even on land, because unloading need not be possible. Has been that way since the command was added in Empire 2. Add the missing check. Signed-off-by: Markus Armbruster --- diff --git a/src/lib/commands/work.c b/src/lib/commands/work.c index 85a2dfe12..77ff250a9 100644 --- a/src/lib/commands/work.c +++ b/src/lib/commands/work.c @@ -27,7 +27,7 @@ * work.c: Implementation of the work command * * Known contributors to this file: - * Markus Armbruster, 2009-2016 + * Markus Armbruster, 2009-2021 */ #include @@ -67,6 +67,11 @@ work(void) continue; if (!(lchr[(int)land.lnd_type].l_flags & L_ENGINEER)) continue; + if (land.lnd_ship >= 0 || land.lnd_land >= 0) { + pr("%s is on a %s\n", + prland(&land), land.lnd_ship >= 0 ? "ship" : "land unit"); + continue; + } if (land.lnd_mobil <= 0) { pr("%s has no mobility!\n", prland(&land)); continue;