#include <ai_engine.hpp>
Static Public Member Functions | |
static const char * | GetClassName () |
static bool | IsValidEngine (EngineID engine_id) |
Checks whether the given engine type is valid and buildable by you. | |
static char * | GetName (EngineID engine_id) |
Get the name of an engine. | |
static CargoID | GetCargoType (EngineID engine_id) |
Get the cargo-type of an engine. | |
static bool | CanRefitCargo (EngineID engine_id, CargoID cargo_id) |
Check if the cargo of an engine can be refitted to your requested. | |
static bool | CanPullCargo (EngineID engine_id, CargoID cargo_id) |
Check if the engine can pull a wagon with the given cargo. | |
static int32 | GetCapacity (EngineID engine_id) |
Get the capacity of an engine. | |
static int32 | GetReliability (EngineID engine_id) |
Get the reliability of an engine. | |
static int32 | GetMaxSpeed (EngineID engine_id) |
Get the maximum speed of an engine. | |
static Money | GetPrice (EngineID engine_id) |
Get the new cost of an engine. | |
static int32 | GetMaxAge (EngineID engine_id) |
Get the maximum age of a brand new engine. | |
static Money | GetRunningCost (EngineID engine_id) |
Get the running cost of an engine. | |
static int32 | GetPower (EngineID engine_id) |
Get the power of an engine. | |
static int32 | GetWeight (EngineID engine_id) |
Get the weight of an engine. | |
static int32 | GetMaxTractiveEffort (EngineID engine_id) |
Get the maximum tractive effort of an engine. | |
static int32 | GetDesignDate (EngineID engine_id) |
Get the date this engine was designed. | |
static AIVehicle::VehicleType | GetVehicleType (EngineID engine_id) |
Get the type of an engine. | |
static bool | IsWagon (EngineID engine_id) |
Check if an engine is a wagon. | |
static bool | CanRunOnRail (EngineID engine_id, AIRail::RailType track_rail_type) |
Check if a train vehicle can run on a RailType. | |
static bool | HasPowerOnRail (EngineID engine_id, AIRail::RailType track_rail_type) |
Check if a train engine has power on a RailType. | |
static AIRoad::RoadType | GetRoadType (EngineID engine_id) |
Get the RoadType of the engine. | |
static AIRail::RailType | GetRailType (EngineID engine_id) |
Get the RailType of the engine. | |
static bool | IsArticulated (EngineID engine_id) |
Check if the engine is articulated. | |
static AIAirport::PlaneType | GetPlaneType (EngineID engine_id) |
Get the PlaneType of the engine. |
Definition at line 17 of file ai_engine.hpp.
bool AIEngine::IsValidEngine | ( | EngineID | engine_id | ) | [static] |
Checks whether the given engine type is valid and buildable by you.
engine_id | The engine to check. |
Definition at line 16 of file ai_engine.cpp.
References HasBit().
Referenced by AIVehicle::BuildVehicle(), CanPullCargo(), CanRefitCargo(), CanRunOnRail(), GetCapacity(), GetCargoType(), GetDesignDate(), GetMaxAge(), GetMaxSpeed(), GetMaxTractiveEffort(), GetName(), GetPlaneType(), GetPower(), GetPrice(), GetRailType(), GetReliability(), GetRoadType(), GetRunningCost(), GetVehicleType(), GetWeight(), HasPowerOnRail(), IsArticulated(), IsWagon(), and AIGroup::SetAutoReplace().
char * AIEngine::GetName | ( | EngineID | engine_id | ) | [static] |
Get the name of an engine.
engine_id | The engine to get the name of. |
Definition at line 21 of file ai_engine.cpp.
References IsValidEngine().
Get the cargo-type of an engine.
In case it can transport 2 cargos, it returns the first.
engine_id | The engine to get the cargo-type of. |
Definition at line 33 of file ai_engine.cpp.
References IsValidEngine().
Referenced by CanRefitCargo().
Check if the cargo of an engine can be refitted to your requested.
If the engine already allows this cargo, the function also returns true.
engine_id | The engine to check for refitting. | |
cargo_id | The cargo to check for refitting. |
AICargo::IsValidCargo(cargo_id).
Definition at line 43 of file ai_engine.cpp.
References CanRefitTo(), GetCargoType(), AICargo::IsValidCargo(), and IsValidEngine().
Check if the engine can pull a wagon with the given cargo.
engine_id | The engine to check. | |
cargo_id | The cargo to check. |
GetVehicleType(engine_id) == AIVehicle::VT_RAIL.
AICargo::IsValidCargo(cargo_id).
Definition at line 54 of file ai_engine.cpp.
References AICargo::CC_PASSENGERS, GetVehicleType(), AICargo::HasCargoClass(), AICargo::IsValidCargo(), IsValidEngine(), and AIVehicle::VT_RAIL.
int32 AIEngine::GetCapacity | ( | EngineID | engine_id | ) | [static] |
Get the capacity of an engine.
In case it can transport 2 cargos, it returns the first.
engine_id | The engine to get the capacity of. |
Definition at line 64 of file ai_engine.cpp.
References IsValidEngine().
int32 AIEngine::GetReliability | ( | EngineID | engine_id | ) | [static] |
Get the reliability of an engine.
The value is between 0 and 100, where 100 means 100% reliability (never breaks down) and 0 means 0% reliability (you most likely don't want to buy it).
engine_id | The engine to get the reliability of. |
GetVehicleType(engine_id) != AIVehicle::VT_TRAIN || !IsWagon(engine_id).
Definition at line 89 of file ai_engine.cpp.
References GetVehicleType(), IsValidEngine(), IsWagon(), and AIVehicle::VT_RAIL.
int32 AIEngine::GetMaxSpeed | ( | EngineID | engine_id | ) | [static] |
Get the maximum speed of an engine.
engine_id | The engine to get the maximum speed of. |
GetVehicleType(engine_id) != AIVehicle::VT_TRAIN || !IsWagon(engine_id).
Definition at line 97 of file ai_engine.cpp.
References _settings_game, IsValidEngine(), VehicleSettings::plane_speed, and GameSettings::vehicle.
Get the new cost of an engine.
engine_id | The engine to get the new cost of. |
Definition at line 107 of file ai_engine.cpp.
References IsValidEngine().
int32 AIEngine::GetMaxAge | ( | EngineID | engine_id | ) | [static] |
Get the maximum age of a brand new engine.
engine_id | The engine to get the maximum age of. |
Definition at line 114 of file ai_engine.cpp.
References DAYS_IN_LEAP_YEAR, GetVehicleType(), IsValidEngine(), IsWagon(), and AIVehicle::VT_RAIL.
Get the running cost of an engine.
engine_id | The engine to get the running cost of. |
Definition at line 122 of file ai_engine.cpp.
References IsValidEngine().
int32 AIEngine::GetPower | ( | EngineID | engine_id | ) | [static] |
Get the power of an engine.
engine_id | The engine to get the power of. |
GetVehicleType(engine_id) == AIVehicle::VT_RAIL && !IsWagon(engine_id).
Definition at line 129 of file ai_engine.cpp.
References GetVehicleType(), IsValidEngine(), IsWagon(), and AIVehicle::VT_RAIL.
int32 AIEngine::GetWeight | ( | EngineID | engine_id | ) | [static] |
Get the weight of an engine.
engine_id | The engine to get the weight of. |
GetVehicleType(engine_id) == AIVehicle::VT_RAIL.
Definition at line 138 of file ai_engine.cpp.
References GetVehicleType(), IsValidEngine(), and AIVehicle::VT_RAIL.
int32 AIEngine::GetMaxTractiveEffort | ( | EngineID | engine_id | ) | [static] |
Get the maximum tractive effort of an engine.
engine_id | The engine to get the maximum tractive effort of. |
GetVehicleType(engine_id) == AIVehicle::VT_RAIL && !IsWagon(engine_id).
Definition at line 146 of file ai_engine.cpp.
References GetVehicleType(), IsValidEngine(), IsWagon(), and AIVehicle::VT_RAIL.
int32 AIEngine::GetDesignDate | ( | EngineID | engine_id | ) | [static] |
Get the date this engine was designed.
engine_id | The engine to get the design date of. |
Definition at line 155 of file ai_engine.cpp.
References IsValidEngine().
AIVehicle::VehicleType AIEngine::GetVehicleType | ( | EngineID | engine_id | ) | [static] |
Get the type of an engine.
engine_id | The engine to get the type of. |
Definition at line 162 of file ai_engine.cpp.
References IsValidEngine(), AIVehicle::VT_AIR, AIVehicle::VT_INVALID, AIVehicle::VT_RAIL, AIVehicle::VT_ROAD, and AIVehicle::VT_WATER.
Referenced by CanPullCargo(), CanRunOnRail(), GetMaxAge(), GetMaxTractiveEffort(), GetPlaneType(), GetPower(), GetRailType(), GetReliability(), GetRoadType(), GetWeight(), HasPowerOnRail(), IsArticulated(), and IsWagon().
bool AIEngine::IsWagon | ( | EngineID | engine_id | ) | [static] |
Check if an engine is a wagon.
engine_id | The engine to check. |
GetVehicleType(engine_id) == AIVehicle::VT_RAIL.
Definition at line 175 of file ai_engine.cpp.
References GetVehicleType(), IsValidEngine(), and AIVehicle::VT_RAIL.
Referenced by GetMaxAge(), GetMaxTractiveEffort(), GetPower(), and GetReliability().
bool AIEngine::CanRunOnRail | ( | EngineID | engine_id, | |
AIRail::RailType | track_rail_type | |||
) | [static] |
Check if a train vehicle can run on a RailType.
engine_id | The engine to check. | |
track_rail_type | The type you want to check. |
GetVehicleType(engine_id) == AIVehicle::VT_RAIL.
AIRail::IsRailTypeAvailable(track_rail_type).
Definition at line 183 of file ai_engine.cpp.
References GetVehicleType(), IsCompatibleRail(), AIRail::IsRailTypeAvailable(), IsValidEngine(), and AIVehicle::VT_RAIL.
bool AIEngine::HasPowerOnRail | ( | EngineID | engine_id, | |
AIRail::RailType | track_rail_type | |||
) | [static] |
Check if a train engine has power on a RailType.
engine_id | The engine to check. | |
track_rail_type | Another RailType. |
GetVehicleType(engine_id) == AIVehicle::VT_RAIL.
AIRail::IsRailTypeAvailable(track_rail_type).
Definition at line 192 of file ai_engine.cpp.
References GetVehicleType(), HasPowerOnRail(), AIRail::IsRailTypeAvailable(), IsValidEngine(), and AIVehicle::VT_RAIL.
AIRoad::RoadType AIEngine::GetRoadType | ( | EngineID | engine_id | ) | [static] |
Get the RoadType of the engine.
engine_id | The engine to get the RoadType of. |
GetVehicleType(engine_id) == AIVehicle::VT_ROAD.
Definition at line 201 of file ai_engine.cpp.
References EF_ROAD_TRAM, GetVehicleType(), HasBit(), IsValidEngine(), AIRoad::ROADTYPE_INVALID, AIRoad::ROADTYPE_ROAD, AIRoad::ROADTYPE_TRAM, and AIVehicle::VT_ROAD.
AIRail::RailType AIEngine::GetRailType | ( | EngineID | engine_id | ) | [static] |
Get the RailType of the engine.
engine_id | The engine to get the RailType of. |
GetVehicleType(engine_id) == AIVehicle::VT_RAIL.
Definition at line 209 of file ai_engine.cpp.
References GetVehicleType(), IsValidEngine(), AIRail::RAILTYPE_INVALID, and AIVehicle::VT_RAIL.
bool AIEngine::IsArticulated | ( | EngineID | engine_id | ) | [static] |
Check if the engine is articulated.
engine_id | The engine to check. |
GetVehicleType(engine_id) == AIVehicle::VT_ROAD || GetVehicleType(engine_id) == AIVehicle::VT_RAIL.
Definition at line 217 of file ai_engine.cpp.
References GetVehicleType(), IsValidEngine(), AIVehicle::VT_RAIL, and AIVehicle::VT_ROAD.
AIAirport::PlaneType AIEngine::GetPlaneType | ( | EngineID | engine_id | ) | [static] |
Get the PlaneType of the engine.
engine_id | The engine to get the PlaneType of. |
GetVehicleType(engine_id) == AIVehicle::VT_AIR.
Definition at line 225 of file ai_engine.cpp.
References GetVehicleType(), IsValidEngine(), AIAirport::PT_INVALID, and AIVehicle::VT_AIR.