From 64cba95fbedc66c1da8802380e9eb85d6ad6abe4 Mon Sep 17 00:00:00 2001 From: rubidium Date: Mon, 7 Feb 2011 09:50:20 +0000 Subject: [PATCH] (svn r22006) -Fix [FS#4480]: smoke/sparks of trains would be shown under bridges, or rather through bridges --- src/vehicle.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/vehicle.cpp b/src/vehicle.cpp index d04bc3eabe..1c55ff95bd 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -50,6 +50,7 @@ #include "effectvehicle_func.h" #include "effectvehicle_base.h" #include "vehiclelist.h" +#include "bridge_map.h" #include "tunnel_map.h" #include "depot_map.h" @@ -2108,11 +2109,13 @@ void Vehicle::ShowVisualEffect() const /* Show no smoke when: * - Smoke has been disabled for this vehicle * - The vehicle is not visible + * - The vehicle is under a bridge * - The vehicle is on a depot tile * - The vehicle is on a tunnel tile * - The vehicle is a train engine that is currently unpowered */ if (disable_effect || v->vehstatus & VS_HIDDEN || + (MayHaveBridgeAbove(v->tile) && IsBridgeAbove(v->tile)) || IsDepotTile(v->tile) || IsTunnelTile(v->tile) || (v->type == VEH_TRAIN &&