Implementation of NewGRF cargoes. More...
#include "stdafx.h"
#include "debug.h"
#include "newgrf_spritegroup.h"
Go to the source code of this file.
Functions | |
static uint32 | CargoGetRandomBits (const ResolverObject *object) |
static uint32 | CargoGetTriggers (const ResolverObject *object) |
static void | CargoSetTriggers (const ResolverObject *object, int triggers) |
static uint32 | CargoGetVariable (const ResolverObject *object, byte variable, uint32 parameter, bool *available) |
static const SpriteGroup * | CargoResolveReal (const ResolverObject *object, const RealSpriteGroup *group) |
static void | NewCargoResolver (ResolverObject *res, const CargoSpec *cs) |
SpriteID | GetCustomCargoSprite (const CargoSpec *cs) |
uint16 | GetCargoCallback (CallbackID callback, uint32 param1, uint32 param2, const CargoSpec *cs) |
CargoID | GetCargoTranslation (uint8 cargo, const GRFFile *grffile, bool usebit) |
Translate a GRF-local cargo slot/bitnum into a CargoID. |
Implementation of NewGRF cargoes.
Definition in file newgrf_cargo.cpp.
Translate a GRF-local cargo slot/bitnum into a CargoID.
cargo | GRF-local cargo slot/bitnum. | |
grffile | Originating GRF file. | |
usebit | Defines the meaning of cargo for GRF version < 7. If true, then cargo is a bitnum. If false, then cargo is a cargoslot. For GRF version >= 7 cargo is always a translated cargo bit. |
Definition at line 112 of file newgrf_cargo.cpp.
References GRFFile::cargo_list, GetCargoIDByBitnum(), GetCargoIDByLabel(), and SmallVector< T, S >::Length().
Referenced by AircraftVehicleChangeInfo(), DoCreateNewIndustry(), HouseGetVariable(), IndustriesChangeInfo(), IndustrytilesChangeInfo(), RailVehicleChangeInfo(), RoadVehicleChangeInfo(), ShipVehicleChangeInfo(), TileLoop_Town(), TownHouseChangeInfo(), and TranslateRefitMask().