diff --git a/src/smallmap_gui.cpp b/src/smallmap_gui.cpp --- a/src/smallmap_gui.cpp +++ b/src/smallmap_gui.cpp @@ -20,6 +20,7 @@ #include "vehicle_base.h" #include "sound_func.h" #include "window_func.h" +#include "effectvehicle_base.h" #include "table/strings.h" #include "table/sprites.h" @@ -739,13 +740,9 @@ public: /* draw vehicles? */ if (this->map_type == SMT_CONTOUR || this->map_type == SMT_VEHICLES) { - Vehicle *v; - bool skip; - byte colour; - - FOR_ALL_VEHICLES(v) { - if (v->type != VEH_EFFECT && - (v->vehstatus & (VS_HIDDEN | VS_UNCLICKABLE)) == 0) { + EffectVehicle *v; + FOR_ALL_EFFECTVEHICLES(v) { + if ((v->vehstatus & (VS_HIDDEN | VS_UNCLICKABLE)) == 0) { /* Remap into flat coordinates. */ Point pt = RemapCoords( v->x_pos / TILE_SIZE - this->scroll_x / TILE_SIZE, // divide each one separately because (a-b)/c != a/c-b/c in integer world @@ -759,7 +756,7 @@ public: if (!IsInsideMM(y, 0, dpi->height)) continue; /* Default is to draw both pixels. */ - skip = false; + bool skip = false; /* Offset X coordinate */ x -= this->subscroll + 3 + dpi->left; @@ -776,7 +773,7 @@ public: } /* Calculate pointer to pixel and the colour */ - colour = (this->map_type == SMT_VEHICLES) ? _vehicle_type_colours[v->type] : 0xF; + byte colour = (this->map_type == SMT_VEHICLES) ? _vehicle_type_colours[v->type] : 0xF; /* And draw either one or two pixels depending on clipping */ blitter->SetPixel(dpi->dst_ptr, x, y, colour);