NewGRF handling of rail types. More...
#include "stdafx.h"#include "debug.h"#include "newgrf_spritegroup.h"#include "date_func.h"#include "depot_base.h"#include "town.h"Go to the source code of this file.
Functions | |
| static uint32 | RailTypeGetRandomBits (const ResolverObject *object) |
| static uint32 | RailTypeGetTriggers (const ResolverObject *object) |
| static void | RailTypeSetTriggers (const ResolverObject *object, int triggers) |
| static uint32 | RailTypeGetVariable (const ResolverObject *object, byte variable, uint32 parameter, bool *available) |
| static const SpriteGroup * | RailTypeResolveReal (const ResolverObject *object, const RealSpriteGroup *group) |
| static void | NewRailTypeResolver (ResolverObject *res, TileIndex tile, TileContext context, const GRFFile *grffile, uint32 param1=0, uint32 param2=0) |
| SpriteID | GetCustomRailSprite (const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context) |
| 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. | |
| void | GetRailTypeResolver (ResolverObject *ro, uint index) |
| Resolve a railtypes's spec and such so we can get a variable. | |
NewGRF handling of rail types.
Definition in file newgrf_railtype.cpp.
| SpriteID GetCustomRailSprite | ( | const RailtypeInfo * | rti, | |
| TileIndex | tile, | |||
| RailTypeSpriteGroup | rtsg, | |||
| TileContext | context | |||
| ) |
Get the sprite to draw for the given tile.
| 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? |
Definition at line 107 of file newgrf_railtype.cpp.
References RailtypeInfo::grffile, RailtypeInfo::group, and SpriteGroup::Resolve().
Referenced by DrawBridgeMiddle(), DrawTile_Road(), DrawTile_TunnelBridge(), 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.
| 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? |
Definition at line 134 of file newgrf_railtype.cpp.
References RailtypeInfo::grffile, RailtypeInfo::group, SpriteGroup::Resolve(), RTSG_SIGNALS, and TCX_NORMAL.
| void GetRailTypeResolver | ( | ResolverObject * | ro, | |
| uint | index | |||
| ) |
Resolve a railtypes's spec and such so we can get a variable.
| ro | The resolver object to fill. | |
| index | The rail tile to get the data from. |
Definition at line 175 of file newgrf_railtype.cpp.
References TCX_NORMAL.
Perform a reverse railtype lookup to get the GRF internal ID.
| railtype | The global (OpenTTD) railtype. | |
| grffile | The GRF to do the lookup for. |
Definition at line 156 of file newgrf_railtype.cpp.
References SmallVector< T, S >::FindIndex(), GetRailTypeInfo(), RailtypeInfo::label, SmallVector< T, S >::Length(), and GRFFile::railtype_list.
1.7.1