diff options
author | rubidium <rubidium@openttd.org> | 2007-08-26 13:55:36 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2007-08-26 13:55:36 +0000 |
commit | d5bc4d8b2af357567792d22c16f9591115dae389 (patch) | |
tree | a1ad1c541e93eb8285d8b94ff26ffc3a974a4489 /src/oldloader.cpp | |
parent | 182283a67ce4c28cc47c9b978f8c9b9075538ef4 (diff) | |
download | openttd-d5bc4d8b2af357567792d22c16f9591115dae389.tar.xz |
(svn r10981) -Fix [FS#1156] (r10970): stations gave ratings for accepted cargo too.
Diffstat (limited to 'src/oldloader.cpp')
-rw-r--r-- | src/oldloader.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/oldloader.cpp b/src/oldloader.cpp index 0f494e6a2..5eba924ca 100644 --- a/src/oldloader.cpp +++ b/src/oldloader.cpp @@ -579,12 +579,15 @@ static bool LoadOldGood(LoadgameState *ls, int num) Station *st = GetStation(_current_station_id); GoodsEntry *ge = &st->goods[num]; bool ret = LoadChunk(ls, ge, goods_chunk); - if (ret && GB(_waiting_acceptance, 0, 12) != 0) { + if (!ret) return false; + + SB(ge->acceptance_pickup, GoodsEntry::ACCEPTANCE, 1, HASBIT(_waiting_acceptance, 15)); + SB(ge->acceptance_pickup, GoodsEntry::PICKUP, 1, _cargo_source != 0xFF); + if (GB(_waiting_acceptance, 0, 12) != 0) { CargoPacket *cp = new CargoPacket(); cp->source = (_cargo_source == 0xFF) ? INVALID_STATION : _cargo_source; cp->count = GB(_waiting_acceptance, 0, 12); cp->days_in_transit = _cargo_days; - ge->acceptance = HASBIT(_waiting_acceptance, 15); ge->cargo.Append(cp); } return ret; |