newgrf_airporttiles.cpp File Reference

NewGRF handling of airport tiles. More...

#include "stdafx.h"
#include "debug.h"
#include "newgrf.h"
#include "newgrf_airporttiles.h"
#include "newgrf_spritegroup.h"
#include "newgrf_sound.h"
#include "station_base.h"
#include "water.h"
#include "viewport_func.h"
#include "landscape.h"
#include "company_base.h"
#include "town.h"
#include "table/strings.h"
#include "table/airporttiles.h"
#include "newgrf_animation_base.h"

Go to the source code of this file.

Data Structures

struct  AirportTileAnimationBase
 Helper class for animation control. More...

Functions

StationGfx GetTranslatedAirportTileID (StationGfx gfx)
 Do airporttile gfx ID translation for NewGRFs.
static const SpriteGroupAirportTileResolveReal (const ResolverObject *object, const RealSpriteGroup *group)
uint32 GetNearbyAirportTileInformation (byte parameter, TileIndex tile, StationID index)
 Based on newhouses/newindustries equivalent, but adapted for airports.
static uint32 GetAirportTileIDAtOffset (TileIndex tile, const Station *st, uint32 cur_grfid)
 Make an analysis of a tile and check whether it belongs to the same airport, and/or the same grf file.
static uint32 AirportTileGetVariable (const ResolverObject *object, byte variable, byte parameter, bool *available)
static uint32 AirportTileGetRandomBits (const ResolverObject *object)
static void AirportTileResolver (ResolverObject *res, const AirportTileSpec *ats, TileIndex tile, const Station *st)
uint16 GetAirportTileCallback (CallbackID callback, uint32 param1, uint32 param2, const AirportTileSpec *ats, const Station *st, TileIndex tile)
static void AirportDrawTileLayout (const TileInfo *ti, const TileLayoutSpriteGroup *group, byte colour, StationGfx gfx)
bool DrawNewAirportTile (TileInfo *ti, Station *st, StationGfx gfx, const AirportTileSpec *airts)
void AnimateAirportTile (TileIndex tile)
void AirportTileAnimationTrigger (Station *st, TileIndex tile, AirpAnimationTrigger trigger, CargoID cargo_type)
void AirportAnimationTrigger (Station *st, AirpAnimationTrigger trigger, CargoID cargo_type)
void GetAirportTileTypeResolver (ResolverObject *ro, uint index)
 Resolve an airport tile's spec and such so we can get a variable.

Variables

AirportTileOverrideManager _airporttile_mngr (NEW_AIRPORTTILE_OFFSET, NUM_AIRPORTTILES, INVALID_AIRPORTTILE)

Detailed Description

NewGRF handling of airport tiles.

Definition in file newgrf_airporttiles.cpp.


Function Documentation

static uint32 GetAirportTileIDAtOffset ( TileIndex  tile,
const Station st,
uint32  cur_grfid 
) [static]

Make an analysis of a tile and check whether it belongs to the same airport, and/or the same grf file.

Parameters:
tile TileIndex of the tile to query
st Station to which to compare the tile to
cur_grfid GRFID of the current callback
Returns:
value encoded as per NFO specs

Definition at line 134 of file newgrf_airporttiles.cpp.

References AirportTileSpec::Get(), GetAirportGfx(), AirportTileSpec::grf_prop, GRFFilePropsBase< Tcnt >::grffile, INVALID_AIRPORTTILE, GRFFilePropsBase< Tcnt >::local_id, NEW_AIRPORTTILE_OFFSET, GRFFileProps::override, and GRFFilePropsBase< Tcnt >::spritegroup.

void GetAirportTileTypeResolver ( ResolverObject ro,
uint  index 
)

Resolve an airport tile's spec and such so we can get a variable.

Parameters:
ro The resolver object to fill.
index The airport tile to get the data from.

Definition at line 350 of file newgrf_airporttiles.cpp.

References SpecializedStation< Station, false >::GetByTile(), and AirportTileSpec::GetByTile().

Referenced by NIHAirportTile::Resolve().

uint32 GetNearbyAirportTileInformation ( byte  parameter,
TileIndex  tile,
StationID  index 
)

Based on newhouses/newindustries equivalent, but adapted for airports.

Parameters:
parameter from callback. It's in fact a pair of coordinates
tile TileIndex from which the callback was initiated
index of the industry been queried for
Returns:
a construction of bits obeying the newgrf format

Definition at line 117 of file newgrf_airporttiles.cpp.

References GetNearbyTileInformation(), GetStationIndex(), IsAirport(), IsTileType(), and MP_STATION.

StationGfx GetTranslatedAirportTileID ( StationGfx  gfx  ) 

Do airporttile gfx ID translation for NewGRFs.

Parameters:
gfx the type to get the override for.
Returns:
the gfx to actually work with.

Definition at line 97 of file newgrf_airporttiles.cpp.

References AirportTileSpec::Get(), AirportTileSpec::grf_prop, INVALID_AIRPORTTILE, and GRFFileProps::override.

Referenced by CmdBuildAirport(), and GetAirportGfx().


Generated on Sun May 15 19:20:23 2011 for OpenTTD by  doxygen 1.6.1