diff options
author | rubidium <rubidium@openttd.org> | 2009-06-29 19:55:36 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2009-06-29 19:55:36 +0000 |
commit | 985608c71332b413b2abe2bbf89a140c2c19d8f1 (patch) | |
tree | dc2ea79e6123a72f2407bc63234c81cbb20dd709 /src/autoreplace_cmd.cpp | |
parent | 80043e688e7e70eae69e1fad6d8a26caf19e3067 (diff) | |
download | openttd-985608c71332b413b2abe2bbf89a140c2c19d8f1.tar.xz |
(svn r16694) -Fix [FS#2995] (rgradual loading, rnewindustries): only pay for whatever has been actually unloaded and perform the payment when unloading has finished. This fixes, amongst others:
* cheating by starting to unload and after getting paid rushing to the depot to get sold (or unloading, loading and getting paid again for the remainder)
* cargo being dropped onto a station at the moment a stockpiling industry doesn't accept it anymore
* industries getting cargo that has not been unloaded yet and subsequently dumping it back on the station in one go
Note: you will now get paid after the unloading has finished, so you'll have to wait a bit longer for 'your' money.
Diffstat (limited to 'src/autoreplace_cmd.cpp')
-rw-r--r-- | src/autoreplace_cmd.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/autoreplace_cmd.cpp b/src/autoreplace_cmd.cpp index e7fb28458..27be93e7a 100644 --- a/src/autoreplace_cmd.cpp +++ b/src/autoreplace_cmd.cpp @@ -111,7 +111,7 @@ static void TransferCargo(Vehicle *old_veh, Vehicle *new_head, bool part_of_chai uint amount = min(src->cargo.Count(), dest->cargo_cap - dest->cargo.Count()); if (amount <= 0) continue; - src->cargo.MoveTo(&dest->cargo, amount); + src->cargo.MoveTo(&dest->cargo, amount, CargoList::MTA_UNLOAD, NULL); } } |