From 37d384600912fc0fb24dc0b2cfcc2f1fe98ff07c Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Mon, 21 Mar 2011 20:39:47 +0100 Subject: [PATCH] Optimize s_commod()'s harbor check for embarked land units --- src/lib/subs/supply.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/lib/subs/supply.c b/src/lib/subs/supply.c index b7adfd85..66de3526 100644 --- a/src/lib/subs/supply.c +++ b/src/lib/subs/supply.c @@ -319,17 +319,16 @@ s_commod(struct empobj *sink, short *vec, if (land.lnd_item[type] <= get_minimum(&land, type)) continue; - getsect(land.lnd_x, land.lnd_y, §); + if (land.lnd_ship >= 0) { + getsect(land.lnd_x, land.lnd_y, §); + if (sect.sct_type != SCT_HARBR || sect.sct_effic < 2) + continue; + } + move_cost = path_find(land.lnd_x, land.lnd_y, x, y, own, MOB_MOVE); if (move_cost < 0) continue; - if ((land.lnd_ship >= 0) && (sect.sct_type != SCT_HARBR)) - continue; - - if ((land.lnd_ship >= 0) && (sect.sct_effic < 2)) - continue; - #if 0 /* * Recursive supply is disabled for now. It can introduce