Implementation of cargoes. More...
#include "stdafx.h"#include "cargotype.h"#include "newgrf_cargo.h"#include "string_func.h"#include "strings_func.h"#include "core/sort_func.hpp"#include "table/sprites.h"#include "table/strings.h"#include "table/cargo_const.h"Go to the source code of this file.
Functions | |
| void | SetupCargoForClimate (LandscapeID l) |
| Set up the default cargo types for the given landscape type. | |
| CargoID | GetCargoIDByLabel (CargoLabel cl) |
| Get the cargo ID by cargo label. | |
| CargoID | GetCargoIDByBitnum (uint8 bitnum) |
| Find the CargoID of a 'bitnum' value. | |
| static int CDECL | CargoSpecNameSorter (const CargoSpec *const *a, const CargoSpec *const *b) |
| Sort cargo specifications by their name. | |
| static int CDECL | CargoSpecClassSorter (const CargoSpec *const *a, const CargoSpec *const *b) |
| Sort cargo specifications by their cargo class. | |
| void | InitializeSortedCargoSpecs () |
| Initialize the list of sorted cargo specifications. | |
Variables | |
| uint32 | _cargo_mask |
| Bitmask of cargo types available. | |
| const CargoSpec * | _sorted_cargo_specs [NUM_CARGO] |
| Cargo specifications sorted alphabetically by name. | |
| uint8 | _sorted_cargo_specs_size |
| Number of cargo specifications stored at the _sorted_cargo_specs array (including special cargoes). | |
| uint8 | _sorted_standard_cargo_specs_size |
| Number of standard cargo specifications stored at the _sorted_cargo_specs array. | |
Implementation of cargoes.
Definition in file cargotype.cpp.
| static int CDECL CargoSpecClassSorter | ( | const CargoSpec *const * | a, | |
| const CargoSpec *const * | b | |||
| ) | [static] |
Sort cargo specifications by their cargo class.
Definition at line 149 of file cargotype.cpp.
References CargoSpecNameSorter(), CC_MAIL, CC_PASSENGERS, and CC_SPECIAL.
Referenced by InitializeSortedCargoSpecs().
| static int CDECL CargoSpecNameSorter | ( | const CargoSpec *const * | a, | |
| const CargoSpec *const * | b | |||
| ) | [static] |
Sort cargo specifications by their name.
Definition at line 134 of file cargotype.cpp.
References lastof, and strnatcmp().
Referenced by CargoSpecClassSorter().
| CargoID GetCargoIDByBitnum | ( | uint8 | bitnum | ) |
Find the CargoID of a 'bitnum' value.
| bitnum | 'bitnum' to find. |
Definition at line 98 of file cargotype.cpp.
References CargoSpec::bitnum, CargoSpec::Index(), and INVALID_CARGO.
Referenced by GetCargoTranslation().
| CargoID GetCargoIDByLabel | ( | CargoLabel | cl | ) |
Get the cargo ID by cargo label.
| cl | Cargo type to get. |
Definition at line 81 of file cargotype.cpp.
References CargoSpec::Index(), and CargoSpec::label.
Referenced by CalculateRefitMasks(), and GetCargoTranslation().
| void InitializeSortedCargoSpecs | ( | ) |
Initialize the list of sorted cargo specifications.
Definition at line 166 of file cargotype.cpp.
References _sorted_cargo_specs_size, _sorted_standard_cargo_specs_size, CargoSpecClassSorter(), CC_SPECIAL, CargoSpec::classes, and QSortT().
Referenced by AfterLoadGRFs(), and ReadLanguagePack().
| void SetupCargoForClimate | ( | LandscapeID | l | ) |
Set up the default cargo types for the given landscape type.
| l | Landscape |
Definition at line 35 of file cargotype.cpp.
References _cargo_mask, _default_cargo, _default_climate_cargo, CargoSpec::bitnum, CargoSpec::Get(), INVALID_CARGO, lengthof, CargoSpec::multiplier, and SetBit().
Referenced by ResetNewGRFData().
| uint32 _cargo_mask |
Bitmask of cargo types available.
Initialized during a call to SetupCargoForClimate.
Definition at line 29 of file cargotype.cpp.
Referenced by CalculateRefitMasks(), CargoChangeInfo(), CompanyStationsWindow::OnClick(), SetupCargoForClimate(), and ShowRefitOptionsList().
1.7.1