Files
@ r9334:6d079081ec24
Branch filter:
Location: cpp/openttd-patchpack/source/src/bridge.h - annotation
r9334:6d079081ec24
1.6 KiB
text/x-c
(svn r13226) -Feature: Allow to have more than only two airports per town. The number of airports is now controlled by the noise each of them generates, the distance from town's center and how tolerant the town is.
Initial concept : TTDPatch (moreairpots), Initial code : Pasky
Thanks to BigBB (help coding), Smatz Skidd13 and frosch for bugcatches and advices
Initial concept : TTDPatch (moreairpots), Initial code : Pasky
Thanks to BigBB (help coding), Smatz Skidd13 and frosch for bugcatches and advices
r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r8123:dde0a9a84019 r8222:18ea0202f936 r8138:f851b4cbdad1 r8123:dde0a9a84019 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r8532:0c31796f7b70 r8532:0c31796f7b70 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r8535:947bf8a72211 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r8540:c11aa4dc7a68 r6248:b940b09d7ab8 r5475:3f5cd13d1b63 r8535:947bf8a72211 r5475:3f5cd13d1b63 r7335:93bf5f4b6ce4 r8379:853fb668feea r6141:c62fa95eacc3 r8535:947bf8a72211 r6141:c62fa95eacc3 r6141:c62fa95eacc3 r6141:c62fa95eacc3 r6141:c62fa95eacc3 r5475:3f5cd13d1b63 r7318:844268a38029 r6160:e05b521a2836 r8532:0c31796f7b70 r8119:8fdb3a371896 r8119:8fdb3a371896 r8489:4eb5a193cb87 r8489:4eb5a193cb87 r5475:3f5cd13d1b63 | /* $Id$ */
/** @file bridge.h Header file for bridges */
#ifndef BRIDGE_H
#define BRIDGE_H
#include "gfx_type.h"
#include "direction_type.h"
#include "tile_cmd.h"
enum {
MAX_BRIDGES = 13
};
typedef uint BridgeType;
/** Struct containing information about a single bridge type
*/
struct BridgeSpec {
Year avail_year; ///< the year where it becomes available
byte min_length; ///< the minimum length (not counting start and end tile)
byte max_length; ///< the maximum length (not counting start and end tile)
uint16 price; ///< the price multiplier
uint16 speed; ///< maximum travel speed
SpriteID sprite; ///< the sprite which is used in the GUI
SpriteID pal; ///< the palette which is used in the GUI
StringID material; ///< the string that contains the bridge description
StringID transport_name[2]; ///< description of the bridge, when built for road or rail
PalSpriteID **sprite_table; ///< table of sprites for drawing the bridge
byte flags; ///< bit 0 set: disable drawing of far pillars.
};
extern BridgeSpec _bridge[MAX_BRIDGES];
Foundation GetBridgeFoundation(Slope tileh, Axis axis);
bool HasBridgeFlatRamp(Slope tileh, Axis axis);
static inline const BridgeSpec *GetBridgeSpec(BridgeType i)
{
assert(i < lengthof(_bridge));
return &_bridge[i];
}
void DrawBridgeMiddle(const TileInfo *ti);
bool CheckBridge_Stuff(BridgeType bridge_type, uint bridge_len);
int CalcBridgeLenCostFactor(int x);
void ResetBridges();
#endif /* BRIDGE_H */
|