diff options
author | bjarni <bjarni@openttd.org> | 2008-05-04 10:05:35 +0000 |
---|---|---|
committer | bjarni <bjarni@openttd.org> | 2008-05-04 10:05:35 +0000 |
commit | dbf6e344a419cf453ce8a292a588385b5299c996 (patch) | |
tree | c16aecefc1241e86133980055d11b5c8aadaa468 /src/vehicle_base.h | |
parent | 8ca10353163dfb34174b4c2a1fad94c3286bb868 (diff) | |
download | openttd-dbf6e344a419cf453ce8a292a588385b5299c996.tar.xz |
(svn r12940) -Fix [FS#1974](r12913): [autoreplace] a vehicle backup should include the cargo packets in the vehicle as well
Diffstat (limited to 'src/vehicle_base.h')
-rw-r--r-- | src/vehicle_base.h | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/vehicle_base.h b/src/vehicle_base.h index d9dabdf58..83b1ee2c1 100644 --- a/src/vehicle_base.h +++ b/src/vehicle_base.h @@ -522,9 +522,6 @@ public: * @return the cost of the depot action. */ CommandCost SendToDepot(uint32 flags, DepotCommand command); - - Vehicle* BackupVehicle() const; - Vehicle* RestoreBackupVehicle(); }; /** @@ -659,15 +656,19 @@ private: Vehicle *vehicles; BackuppedOrders *orders; PlayerMoneyBackup *economy; + CargoPacket *cargo_packets; + + void BackupVehicle(Vehicle *v); + Vehicle* RestoreBackupVehicle(Vehicle *v, Player *p); public: - BackuppedVehicle(bool include_orders) : vehicles(NULL), economy(NULL) { + BackuppedVehicle(bool include_orders) : vehicles(NULL), economy(NULL), cargo_packets(NULL) { orders = include_orders ? new BackuppedOrders() : NULL; } - ~BackuppedVehicle() { free(vehicles); delete orders; delete economy; } + ~BackuppedVehicle() { free(vehicles); delete orders; delete economy; free(cargo_packets); } - void Backup(const Vehicle *v, Player *p = NULL); - Vehicle *Restore(Vehicle *v); + void Backup(Vehicle *v, Player *p = NULL); + Vehicle *Restore(Vehicle *v, Player *p); bool ContainsBackup() { return vehicles != NULL; } }; |