OpenTTD Source 20241224-master-gf74b0cf984
elrail_func.h File Reference

header file for electrified rail specific functions More...

#include "rail.h"
#include "tile_cmd.h"
#include "transparency.h"

Go to the source code of this file.

Functions

bool HasRailCatenary (RailType rt)
 Test if a rail type has catenary.
 
bool HasRailCatenaryDrawn (RailType rt)
 Test if we should draw rail catenary.
 
void DrawRailCatenary (const TileInfo *ti)
 Draws overhead wires and pylons for electric railways.
 
void DrawRailCatenaryOnTunnel (const TileInfo *ti)
 Draws wires on a tunnel tile.
 
void DrawRailCatenaryOnBridge (const TileInfo *ti)
 Draws wires on a tunnel tile.
 
void SettingsDisableElrail (int32_t new_value)
 _settings_game.disable_elrail callback
 
void UpdateDisableElrailSettingState (bool disable, bool update_vehicles)
 

Detailed Description

header file for electrified rail specific functions

Definition in file elrail_func.h.

Function Documentation

◆ DrawRailCatenary()

void DrawRailCatenary ( const TileInfo ti)

◆ DrawRailCatenaryOnBridge()

void DrawRailCatenaryOnBridge ( const TileInfo ti)

◆ DrawRailCatenaryOnTunnel()

void DrawRailCatenaryOnTunnel ( const TileInfo ti)

Draws wires on a tunnel tile.

DrawTile_TunnelBridge() calls this function to draw the wires as SpriteCombine with the tunnel roof.

Parameters
tiThe Tileinfo to draw the tile for

Definition at line 249 of file elrail.cpp.

References AddSortableSpriteToDraw(), BB_Z_SEPARATOR, GetTilePixelZ(), GetTunnelBridgeDirection(), GetWireBase(), IsTransparencySet(), TileInfo::tile, TO_CATENARY, TileInfo::x, and TileInfo::y.

Referenced by DrawTile_TunnelBridge().

◆ HasRailCatenary()

bool HasRailCatenary ( RailType  rt)
inline

Test if a rail type has catenary.

Parameters
rtRail type to test

Definition at line 21 of file elrail_func.h.

References GetRailTypeInfo(), HasBit(), and RTF_CATENARY.

Referenced by DrawRailCatenaryRailway(), GetRailTrackBitsUniversal(), HasRailCatenaryDrawn(), and MaskWireBits().

◆ HasRailCatenaryDrawn()

bool HasRailCatenaryDrawn ( RailType  rt)
inline

Test if we should draw rail catenary.

Parameters
rtRail type to test

Definition at line 30 of file elrail_func.h.

References _settings_game, VehicleSettings::disable_elrails, HasRailCatenary(), IsInvisibilitySet(), TO_CATENARY, and GameSettings::vehicle.

Referenced by DrawBridgeMiddle(), DrawTile_Road(), and DrawTile_TunnelBridge().

◆ SettingsDisableElrail()

void SettingsDisableElrail ( int32_t  new_value)

_settings_game.disable_elrail callback

Definition at line 598 of file elrail.cpp.

◆ UpdateDisableElrailSettingState()

void UpdateDisableElrailSettingState ( bool  disable,
bool  update_vehicles 
)

Definition at line 604 of file elrail.cpp.