Files
@ r3314:95a9020945e1
Branch filter:
Location: cpp/openttd-patchpack/source/tunnel_map.h - annotation
r3314:95a9020945e1
1.0 KiB
text/x-c
(svn r4077) Add GetIndustry{Index,ByTile}() to get the industry index resp. the industry from a tile
r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3184:028654b02189 r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3156:c9d8084e145c r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3154:4ad5fba6d52a | /* $Id$ */
#ifndef TUNNEL_MAP_H
#define TUNNEL_MAP_H
#include "direction.h"
#include "macros.h"
#include "map.h"
#include "rail.h"
static inline bool IsTunnel(TileIndex t)
{
return !HASBIT(_m[t].m5, 7);
}
static inline bool IsTunnelTile(TileIndex t)
{
return IsTileType(t, MP_TUNNELBRIDGE) && IsTunnel(t);
}
static inline DiagDirection GetTunnelDirection(TileIndex t)
{
return (DiagDirection)GB(_m[t].m5, 0, 2);
}
static inline TransportType GetTunnelTransportType(TileIndex t)
{
return (TransportType)GB(_m[t].m5, 2, 2);
}
TileIndex GetOtherTunnelEnd(TileIndex);
bool IsTunnelInWay(TileIndex, uint z);
static inline void MakeRoadTunnel(TileIndex t, Owner o, DiagDirection d)
{
SetTileType(t, MP_TUNNELBRIDGE);
SetTileOwner(t, o);
_m[t].m2 = 0;
_m[t].m3 = 0;
_m[t].m4 = 0;
_m[t].m5 = TRANSPORT_ROAD << 2 | d;
}
static inline void MakeRailTunnel(TileIndex t, Owner o, DiagDirection d, RailType r)
{
SetTileType(t, MP_TUNNELBRIDGE);
SetTileOwner(t, o);
_m[t].m2 = 0;
_m[t].m3 = r;
_m[t].m4 = 0;
_m[t].m5 = TRANSPORT_RAIL << 2 | d;
}
#endif
|