OpenTTD Source
20241121-master-g67a0fccfad
|
Action of final delivery of cargo. More...
#include <cargoaction.h>
Public Member Functions | |
CargoDelivery (VehicleCargoList *source, uint max_move, CargoID cargo, CargoPayment *payment, TileIndex current_tile) | |
bool | operator() (CargoPacket *cp) |
Delivers some cargo. More... | |
Public Member Functions inherited from CargoRemoval< VehicleCargoList > | |
CargoRemoval (VehicleCargoList *source, uint max_move) | |
uint | MaxMove () |
Returns how much more cargo can be removed with this action. More... | |
bool | operator() (CargoPacket *cp) |
bool | operator() (CargoPacket *cp) |
Removes some cargo from a StationCargoList. More... | |
Protected Attributes | |
TileIndex | current_tile |
Current tile cargo delivery is happening. | |
CargoPayment * | payment |
Payment object where payments will be registered. | |
CargoID | cargo |
The cargo type of the cargo. | |
Protected Attributes inherited from CargoRemoval< VehicleCargoList > | |
VehicleCargoList * | source |
Source of the cargo. | |
uint | max_move |
Maximum amount of cargo to be removed with this action. | |
Additional Inherited Members | |
Protected Member Functions inherited from CargoRemoval< VehicleCargoList > | |
uint | Preprocess (CargoPacket *cp) |
Determines the amount of cargo to be removed from a packet and removes that from the metadata of the list. More... | |
bool | Postprocess (CargoPacket *cp, uint remove) |
Finalize cargo removal. More... | |
Action of final delivery of cargo.
Definition at line 39 of file cargoaction.h.
bool CargoDelivery::operator() | ( | CargoPacket * | cp | ) |
Delivers some cargo.
cp | Packet to be delivered. |
Definition at line 106 of file cargoaction.cpp.
References cargo, current_tile, CargoList< VehicleCargoList, CargoPacketList >::MTA_DELIVER, CargoPayment::PayFinalDelivery(), payment, CargoRemoval< VehicleCargoList >::Postprocess(), CargoRemoval< VehicleCargoList >::Preprocess(), VehicleCargoList::RemoveFromMeta(), and CargoRemoval< VehicleCargoList >::source.