Don't resupply supply unit after use as supply source

Running supply recursively here is problematic, because it can draw
supplies from the outer supply's destination, which can then end up
with less than it asked for.

Serving as supply source never puts a unit that is in supply out of
supply.  So, the recursive supply here denies the sink its supplies to
put a supply unit somewhere else back in supply.  That's robbing Peter
to pay Paul.  Drop it.
This commit is contained in:
Markus Armbruster 2009-02-15 07:30:23 +01:00
parent 2b7163f10a
commit 07561b4772

View file

@ -353,10 +353,6 @@ s_commod(int own, int x, int y, i_type type, int total_wanted,
if (can_move >= wanted) {
land.lnd_item[type] -= wanted;
/* resupply the supply unit */
resupply_commod(&land, type);
land.lnd_mobil -= roundavg(wanted * weight * move_cost);
if (actually_doit)