Class that handles all bridge related functions. More...
#include <script_bridge.hpp>
Public Types | |
| enum | ErrorMessages { ERR_BRIDGE_BASE = ScriptError::ERR_CAT_BRIDGE << ScriptError::ERR_CAT_BIT_SIZE, ERR_BRIDGE_TYPE_UNAVAILABLE, ERR_BRIDGE_CANNOT_END_IN_WATER, ERR_BRIDGE_HEADS_NOT_ON_SAME_HEIGHT } |
All bridge related error messages. More... | |
Static Public Member Functions | |
| static bool | IsValidBridge (BridgeID bridge_id) |
| Checks whether the given bridge type is valid. | |
| static bool | IsBridgeTile (TileIndex tile) |
| Checks whether the given tile is actually a bridge start or end tile. | |
| static BridgeID | GetBridgeID (TileIndex tile) |
| Get the BridgeID of a bridge at a given tile. | |
| static char * | GetName (BridgeID bridge_id) |
| Get the name of a bridge. | |
| static int32 | GetMaxSpeed (BridgeID bridge_id) |
| Get the maximum speed of a bridge. | |
| static Money | GetPrice (BridgeID bridge_id, uint length) |
| Get the new cost of a bridge, excluding the road and/or rail. | |
| static int32 | GetMaxLength (BridgeID bridge_id) |
| Get the maximum length of a bridge. | |
| static int32 | GetMinLength (BridgeID bridge_id) |
| Get the minimum length of a bridge. | |
| static bool | _BuildBridgeRoad1 () |
| Internal function to help BuildBridge in case of road. | |
| static bool | _BuildBridgeRoad2 () |
| Internal function to help BuildBridge in case of road. | |
| static bool | BuildBridge (ScriptVehicle::VehicleType vehicle_type, BridgeID bridge_id, TileIndex start, TileIndex end) |
| Build a bridge from one tile to the other. | |
| static bool | RemoveBridge (TileIndex tile) |
| Removes a bridge, by executing it on either the start or end tile. | |
| static TileIndex | GetOtherBridgeEnd (TileIndex tile) |
| Get the tile that is on the other end of a bridge starting at tile. | |
Class that handles all bridge related functions.
ai game
Definition at line 21 of file script_bridge.hpp.
All bridge related error messages.
Definition at line 26 of file script_bridge.hpp.
| bool ScriptBridge::_BuildBridgeRoad1 | ( | ) | [static] |
Internal function to help BuildBridge in case of road.
-all
Definition at line 105 of file script_bridge.cpp.
References _DoCommandReturnBuildBridge2(), CMD_BUILD_ROAD, DiagdirBetweenTiles(), DiagDirToRoadBits(), ScriptObject::DoCommand(), ScriptObject::GetCallbackVariable(), ScriptObject::GetRoadType(), ReverseDiagDir(), and TileOffsByDiagDir().
Referenced by _DoCommandReturnBuildBridge1().
| bool ScriptBridge::_BuildBridgeRoad2 | ( | ) | [static] |
Internal function to help BuildBridge in case of road.
-all
Definition at line 117 of file script_bridge.cpp.
References CMD_BUILD_ROAD, DiagdirBetweenTiles(), DiagDirToRoadBits(), ScriptObject::DoCommand(), ScriptObject::GetCallbackVariable(), ScriptObject::GetRoadType(), ReverseDiagDir(), and TileOffsByDiagDir().
Referenced by _DoCommandReturnBuildBridge2().
| bool ScriptBridge::BuildBridge | ( | ScriptVehicle::VehicleType | vehicle_type, | |
| BridgeID | bridge_id, | |||
| TileIndex | start, | |||
| TileIndex | end | |||
| ) | [static] |
Build a bridge from one tile to the other.
As an extra for road, this functions builds two half-pieces of road on each end of the bridge, making it easier for you to connect it to your network.
| vehicle_type | The vehicle-type of bridge to build. | |
| bridge_id | The bridge-type to build. | |
| start | Where to start the bridge. | |
| end | Where to end the bridge. |
Definition at line 70 of file script_bridge.cpp.
References _DoCommandReturnBuildBridge1(), CMD_BUILD_BRIDGE, ScriptObject::DoCommand(), EnforcePrecondition, ScriptObject::GetCompany(), ScriptRail::GetCurrentRailType(), ScriptObject::GetRoadType(), ScriptRail::IsRailTypeAvailable(), IsValidTile(), OWNER_DEITY, RoadTypeToRoadTypes(), ScriptObject::SetCallbackVariable(), TileX(), TileY(), TRANSPORT_RAIL, TRANSPORT_ROAD, TRANSPORT_WATER, ScriptVehicle::VT_RAIL, ScriptVehicle::VT_ROAD, and ScriptVehicle::VT_WATER.
Get the BridgeID of a bridge at a given tile.
| tile | The tile to get the BridgeID from. |
Definition at line 32 of file script_bridge.cpp.
References GetBridgeType(), and IsBridgeTile().
| int32 ScriptBridge::GetMaxLength | ( | BridgeID | bridge_id | ) | [static] |
Get the maximum length of a bridge.
| bridge_id | The bridge to get the maximum length of. |
Definition at line 161 of file script_bridge.cpp.
References _settings_game, GameSettings::construction, GetBridgeSpec(), IsValidBridge(), ConstructionSettings::max_bridge_length, and min().
Referenced by ScriptBridgeList_Length::ScriptBridgeList_Length().
| int32 ScriptBridge::GetMaxSpeed | ( | BridgeID | bridge_id | ) | [static] |
Get the maximum speed of a bridge.
| bridge_id | The bridge to get the maximum speed of. |
Definition at line 147 of file script_bridge.cpp.
References GetBridgeSpec(), IsValidBridge(), and BridgeSpec::speed.
| int32 ScriptBridge::GetMinLength | ( | BridgeID | bridge_id | ) | [static] |
Get the minimum length of a bridge.
| bridge_id | The bridge to get the minimum length of. |
Definition at line 168 of file script_bridge.cpp.
References GetBridgeSpec(), IsValidBridge(), and BridgeSpec::min_length.
Referenced by ScriptBridgeList_Length::ScriptBridgeList_Length().
| char * ScriptBridge::GetName | ( | BridgeID | bridge_id | ) | [static] |
Get the name of a bridge.
| bridge_id | The bridge to get the name of. |
Definition at line 136 of file script_bridge.cpp.
References GetBridgeSpec(), and IsValidBridge().
Get the tile that is on the other end of a bridge starting at tile.
| tile | The tile that is an end of a bridge. |
Definition at line 175 of file script_bridge.cpp.
References INVALID_TILE, IsBridgeTile(), and IsValidTile().
Get the new cost of a bridge, excluding the road and/or rail.
| bridge_id | The bridge to get the new cost of. | |
| length | The length of the bridge. |
Definition at line 154 of file script_bridge.cpp.
References CalcBridgeLenCostFactor(), GetBridgeSpec(), and IsValidBridge().
| bool ScriptBridge::IsBridgeTile | ( | TileIndex | tile | ) | [static] |
Checks whether the given tile is actually a bridge start or end tile.
| tile | The tile to check. |
Definition at line 26 of file script_bridge.cpp.
References IsValidTile().
Referenced by GetBridgeID(), GetOtherBridgeEnd(), and RemoveBridge().
| bool ScriptBridge::IsValidBridge | ( | BridgeID | bridge_id | ) | [static] |
Checks whether the given bridge type is valid.
| bridge_id | The bridge to check. |
Definition at line 21 of file script_bridge.cpp.
References _cur_year, GetBridgeSpec(), and MAX_BRIDGES.
Referenced by GetMaxLength(), GetMaxSpeed(), GetMinLength(), GetName(), GetPrice(), and ScriptBridgeList_Length::ScriptBridgeList_Length().
| bool ScriptBridge::RemoveBridge | ( | TileIndex | tile | ) | [static] |
Removes a bridge, by executing it on either the start or end tile.
| tile | An end or start tile of the bridge. |
| ScriptError::ERR_OWNED_BY_ANOTHER_COMPANY |
Definition at line 129 of file script_bridge.cpp.
References CMD_LANDSCAPE_CLEAR, ScriptObject::DoCommand(), EnforcePrecondition, ScriptObject::GetCompany(), IsBridgeTile(), and OWNER_DEITY.
1.7.1