(svn r25434) -Fix: reroute cargo staged for unloading if a link breaks

This commit is contained in:
fonsinchen
2013-06-23 08:28:53 +00:00
parent 57e5a95b6f
commit 3dd811e179
5 changed files with 82 additions and 7 deletions

View File

@@ -82,6 +82,12 @@ public:
*/
void SetLoadPlace(TileIndex load_place) { this->loaded_at_xy = load_place; }
/**
* Sets the station where the packet is supposed to go next.
* @param next_station Next station the packet should go to.
*/
void SetNextStation(StationID next_station) { this->next_station = next_station; }
/**
* Adds some feeder share to the packet.
* @param new_share Feeder share to be added.
@@ -319,6 +325,7 @@ public:
template<class Tsource>
friend class CargoRemoval;
friend class CargoReturn;
friend class VehicleCargoReroute;
/**
* Returns source of the first cargo packet in this list.
@@ -424,6 +431,7 @@ public:
uint Unload(uint max_move, StationCargoList *dest, CargoPayment *payment);
uint Shift(uint max_move, VehicleCargoList *dest);
uint Truncate(uint max_move = UINT_MAX);
uint Reroute(uint max_move, VehicleCargoList *dest, StationID avoid, StationID avoid2, const GoodsEntry *ge);
/**
* Are two the two CargoPackets mergeable in the context of
@@ -467,7 +475,7 @@ public:
friend class CargoRemoval;
friend class CargoReservation;
friend class CargoReturn;
friend class CargoReroute;
friend class StationCargoReroute;
static void InvalidateAllFrom(SourceType src_type, SourceID src);