mirror of https://github.com/OpenTTD/OpenTTD
(svn r4723) - Newstations: add TileIndex parameter to station resolver.
parent
b4a254cd43
commit
be5744ae50
|
@ -225,7 +225,7 @@ static const RealSpriteGroup *ResolveStationSpriteGroup(const SpriteGroup *spg,
|
|||
}
|
||||
}
|
||||
|
||||
uint32 GetCustomStationRelocation(const StationSpec *statspec, const Station *st, byte ctype)
|
||||
SpriteID GetCustomStationRelocation(const StationSpec *statspec, const Station *st, TileIndex tile, byte ctype)
|
||||
{
|
||||
const RealSpriteGroup *rsg = ResolveStationSpriteGroup(statspec->spritegroup[ctype], st);
|
||||
if (rsg == NULL) return 0;
|
||||
|
|
|
@ -98,7 +98,7 @@ const StationSpec *GetCustomStationSpec(StationClassID sclass, uint station);
|
|||
/* Get sprite offset for a given custom station and station structure (may be
|
||||
* NULL if ctype is set - that means we are in a build dialog). The station
|
||||
* structure is used for variational sprite groups. */
|
||||
uint32 GetCustomStationRelocation(const StationSpec *statspec, const Station *st, byte ctype);
|
||||
SpriteID GetCustomStationRelocation(const StationSpec *statspec, const Station *st, TileIndex tile, byte ctype);
|
||||
|
||||
/* Allocate a StationSpec to a Station. This is called once per build operation. */
|
||||
int AllocateSpecToStation(const StationSpec *statspec, Station *st, bool exec);
|
||||
|
|
|
@ -1324,7 +1324,7 @@ static void DrawTile_Track(TileInfo *ti)
|
|||
DrawTileSeqStruct const *seq;
|
||||
// emulate station tile - open with building
|
||||
const DrawTileSprites *cust = &statspec->renderdata[2 + GetWaypointAxis(ti->tile)];
|
||||
uint32 relocation = GetCustomStationRelocation(statspec, ComposeWaypointStation(ti->tile), 0);
|
||||
uint32 relocation = GetCustomStationRelocation(statspec, ComposeWaypointStation(ti->tile), ti->tile, 0);
|
||||
|
||||
/* We don't touch the 0x8000 bit. In all this
|
||||
* waypoint code, it is used to indicate that
|
||||
|
|
|
@ -1989,7 +1989,7 @@ static void DrawTile_Station(TileInfo *ti)
|
|||
if (statspec != NULL) {
|
||||
uint tile = GetStationGfx(ti->tile);
|
||||
|
||||
relocation = GetCustomStationRelocation(statspec, st, 0);
|
||||
relocation = GetCustomStationRelocation(statspec, st, ti->tile, 0);
|
||||
|
||||
/* Ensure the chosen tile layout is valid for this custom station */
|
||||
t = &statspec->renderdata[tile < statspec->tiles ? tile : GetRailStationAxis(ti->tile)];
|
||||
|
|
|
@ -405,7 +405,7 @@ void DrawWaypointSprite(int x, int y, int stat_id, RailType railtype)
|
|||
return;
|
||||
}
|
||||
|
||||
relocation = GetCustomStationRelocation(statspec, NULL, 1);
|
||||
relocation = GetCustomStationRelocation(statspec, NULL, INVALID_TILE, 1);
|
||||
// emulate station tile - open with building
|
||||
// add 1 to get the other direction
|
||||
cust = &statspec->renderdata[2];
|
||||
|
|
Loading…
Reference in New Issue