diff options
author | peter1138 <peter1138@openttd.org> | 2006-06-04 17:49:16 +0000 |
---|---|---|
committer | peter1138 <peter1138@openttd.org> | 2006-06-04 17:49:16 +0000 |
commit | 0a623bc333a54dba04271399b5d73a09498df8b2 (patch) | |
tree | dc2b05bb9be51dab29333186522ff5a64b983479 /aircraft_cmd.c | |
parent | f00c3e7e25a5a31b31eeaf369feaa789956306d8 (diff) | |
download | openttd-0a623bc333a54dba04271399b5d73a09498df8b2.tar.xz |
(svn r5104) - When refitting a vehicle to its existing cargo type, don't lose the cargo onboard (useful when adding wagons to a train)
Diffstat (limited to 'aircraft_cmd.c')
-rw-r--r-- | aircraft_cmd.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/aircraft_cmd.c b/aircraft_cmd.c index dc736e491..94411d3b2 100644 --- a/aircraft_cmd.c +++ b/aircraft_cmd.c @@ -538,7 +538,13 @@ int32 CmdRefitAircraft(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) u = v->next; mail = (new_cid != CT_PASSENGERS) ? 0 : avi->mail_capacity; u->cargo_cap = mail; - v->cargo_count = u->cargo_count = 0; + if (v->cargo_type == new_cid) { + v->cargo_count = min(pass, v->cargo_count); + u->cargo_count = min(mail, u->cargo_count); + } else { + v->cargo_count = 0; + u->cargo_count = 0; + } v->cargo_type = new_cid; v->cargo_subtype = new_subtype; InvalidateWindow(WC_VEHICLE_DETAILS, v->index); |