diff options
author | tron <tron@openttd.org> | 2006-08-31 11:18:30 +0000 |
---|---|---|
committer | tron <tron@openttd.org> | 2006-08-31 11:18:30 +0000 |
commit | 1bb62bdef7c5c17f8b104a5a1e6ad09b3f060864 (patch) | |
tree | a56ad356994e9ba00f5ed6e8d6eeaa92eaeb30d7 | |
parent | f44e915cdcce4c79f72ce3c591dee109f466adf5 (diff) | |
download | openttd-1bb62bdef7c5c17f8b104a5a1e6ad09b3f060864.tar.xz |
(svn r6265) Check whether to draw catenary at all once before the drawing loop instead of on every iteration
-rw-r--r-- | elrail.c | 15 |
1 files changed, 8 insertions, 7 deletions
@@ -280,6 +280,14 @@ static void DrawCatenaryRailway(const TileInfo *ti) } } + /* Don't draw a wire under a low bridge */ + if (IsBridgeTile(ti->tile) && + IsBridgeMiddle(ti->tile) && + !(_display_opt & DO_TRANS_BUILDINGS) && + GetBridgeHeight(ti->tile) <= TilePixelHeight(ti->tile) + TILE_HEIGHT) { + return; + } + /* Drawing of pylons is finished, now draw the wires */ for (t = 0; t < TRACK_END; t++) { if (HASBIT(trackconfig[TS_HOME], t)) { @@ -290,13 +298,6 @@ static void DrawCatenaryRailway(const TileInfo *ti) const SortableSpriteStruct *sss; int tileh_selector = !(tileh[TS_HOME] % 3) * tileh[TS_HOME] / 3; /* tileh for the slopes, 0 otherwise */ - if ( /* We are not drawing a wire under a low bridge */ - IsBridgeTile(ti->tile) && - IsBridgeMiddle(ti->tile) && - !(_display_opt & DO_TRANS_BUILDINGS) && - GetBridgeHeight(ti->tile) <= TilePixelHeight(ti->tile) + TILE_HEIGHT - ) return; - assert(PCPconfig != 0); /* We have a pylon on neither end of the wire, that doesn't work (since we have no sprites for that) */ assert(!IsSteepSlope(tileh[TS_HOME])); sss = &CatenarySpriteData[Wires[tileh_selector][t][PCPconfig]]; |