OpenTTD

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- File List
- Globals

Functions
newgrf_railtype.cpp File Reference

NewGRF handling of rail types. More...

`#include "stdafx.h"`
`#include "debug.h"`
`#include "newgrf_railtype.h"`
`#include "date_func.h"`
`#include "depot_base.h"`
`#include "town.h"`
`#include "safeguards.h"`

Go to the source code of this file.

## Functions
SpriteID | GetCustomRailSprite (const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context, uint *num_results)
| Get the sprite to draw for the given tile.
SpriteID | GetCustomSignalSprite (const RailtypeInfo *rti, TileIndex tile, SignalType type, SignalVariant var, SignalState state, bool gui)
| Get the sprite to draw for a given signal.
uint8 | GetReverseRailTypeTranslation (RailType railtype, const GRFFile *grffile)
| Perform a reverse railtype lookup to get the GRF internal ID.

## Detailed Description

NewGRF handling of rail types.

Definition in file newgrf_railtype.cpp.

## Function Documentation

SpriteID GetCustomRailSprite | ( | const RailtypeInfo * | rti,
|  | TileIndex | tile,
|  | RailTypeSpriteGroup | rtsg,
|  | TileContext | context,
|  | uint * | num_results
| ) |  |

Get the sprite to draw for the given tile.

Parameters

  | rti | The rail type data (spec).
  | tile | The tile to get the sprite for.
  | rtsg | The type of sprite to draw.
  | content | Where are we drawing the tile?
  [out] | num_results | If not NULL, return the number of sprites in the spriteset.

Returns
  The sprite to draw.

Definition at line 106 of file newgrf_railtype.cpp.

References RailtypeInfo::group, and SpriteGroup::Resolve().

Referenced by DrawBridgeMiddle(), DrawStationTile(), DrawTile_Road(), DrawTile_TunnelBridge(), DrawTrackDetails(), GetPylonBase(), and GetWireBase().

SpriteID GetCustomSignalSprite | ( | const RailtypeInfo * | rti,
|  | TileIndex | tile,
|  | SignalType | type,
|  | SignalVariant | var,
|  | SignalState | state,
|  | bool | gui
| ) |  |

Get the sprite to draw for a given signal.

Parameters

  rti | The rail type data (spec).
  tile | The tile to get the sprite for.
  type | Signal type.
  var | Signal variant.
  state | Signal state.
  gui | Is the sprite being used on the map or in the GUI?

Returns
  The sprite to draw.

Definition at line 131 of file newgrf_railtype.cpp.

References RailtypeInfo::group, SpriteGroup::Resolve(), RTSG_SIGNALS, and TCX_NORMAL.

uint8 GetReverseRailTypeTranslation | ( | RailType | railtype,
|  | const GRFFile * | grffile
| ) |  |

Perform a reverse railtype lookup to get the GRF internal ID.

Parameters

  railtype | The global (OpenTTD) railtype.
  grffile | The GRF to do the lookup for.

Returns
  the GRF internal ID.

Definition at line 151 of file newgrf_railtype.cpp.

References SmallVector< T, S >::FindIndex(), GetRailTypeInfo(), RailtypeInfo::label, SmallVector< T, S >::Length(), and GRFFile::railtype_list.

Referenced by StationScopeResolver::GetVariable().