OpenTTD Source  20241121-master-g67a0fccfad
smallmap_gui.cpp File Reference

GUI that shows a small map of the world with metadata like owner or height. More...

#include "stdafx.h"
#include "core/backup_type.hpp"
#include "clear_map.h"
#include "industry.h"
#include "station_map.h"
#include "landscape.h"
#include "tree_map.h"
#include "viewport_func.h"
#include "town.h"
#include "tunnelbridge_map.h"
#include "core/endian_func.hpp"
#include "vehicle_base.h"
#include "sound_func.h"
#include "window_func.h"
#include "company_base.h"
#include "zoom_func.h"
#include "strings_func.h"
#include "blitter/factory.hpp"
#include "linkgraph/linkgraph_gui.h"
#include "timer/timer.h"
#include "timer/timer_window.h"
#include "smallmap_gui.h"
#include "widgets/smallmap_widget.h"
#include "table/strings.h"
#include <bitset>
#include "safeguards.h"
#include "table/heightmap_colours.h"

Go to the source code of this file.

Data Structures

struct  LegendAndColour
 Structure for holding relevant data for legends in small map. More...
 
struct  SmallMapColourScheme
 Colour scheme of the smallmap. More...
 
struct  AndOr
 
class  SmallMapWindow
 Class managing the smallmap window. More...
 
class  NWidgetSmallmapDisplay
 Custom container class for displaying smallmap with a vertically resizing legend panel. More...
 

Macros

#define MK(a, b)   {a, b, INVALID_INDUSTRYTYPE, 0, INVALID_COMPANY, true, false, false}
 Macro for ordinary entry of LegendAndColour.
 
#define MC(col_break)   {0, STR_TINY_BLACK_HEIGHT, INVALID_INDUSTRYTYPE, 0, INVALID_COMPANY, true, false, col_break}
 Macro for a height legend entry with configurable colour.
 
#define MO(a, b)   {a, b, INVALID_INDUSTRYTYPE, 0, INVALID_COMPANY, true, false, false}
 Macro for non-company owned property entry of LegendAndColour.
 
#define MOEND()   {0, 0, INVALID_INDUSTRYTYPE, 0, OWNER_NONE, true, true, false}
 Macro used for forcing a rebuild of the owner legend the first time it is used.
 
#define MKEND()   {0, STR_NULL, INVALID_INDUSTRYTYPE, 0, INVALID_COMPANY, true, true, false}
 Macro for end of list marker in arrays of LegendAndColour.
 
#define MS(a, b)   {a, b, INVALID_INDUSTRYTYPE, 0, INVALID_COMPANY, true, false, true}
 Macro for break marker in arrays of LegendAndColour. More...
 
#define MKCOLOUR(x)   TO_LE32X(x)
 
#define MKCOLOUR_XXXX(x)   (MKCOLOUR(0x01010101) * (uint)(x))
 
#define MKCOLOUR_0XX0(x)   (MKCOLOUR(0x00010100) * (uint)(x))
 
#define MKCOLOUR_X00X(x)   (MKCOLOUR(0x01000001) * (uint)(x))
 
#define MKCOLOUR_XYYX(x, y)   (MKCOLOUR_X00X(x) | MKCOLOUR_0XX0(y))
 
#define MKCOLOUR_0000   MKCOLOUR_XXXX(0x00)
 
#define MKCOLOUR_F00F   MKCOLOUR_X00X(0xFF)
 
#define MKCOLOUR_FFFF   MKCOLOUR_XXXX(0xFF)
 

Enumerations

enum  SmallMapType : uint8_t {
  SMT_CONTOUR , SMT_VEHICLES , SMT_INDUSTRY , SMT_LINKSTATS ,
  SMT_ROUTES , SMT_VEGETATION , SMT_OWNER
}
 Types of legends in the WID_SM_LEGEND widget.
 

Functions

void BuildIndustriesLegend ()
 Fills an array for the industries legends.
 
void BuildLinkStatsLegend ()
 Populate legend table for the link stat view.
 
void BuildLandLegend ()
 (Re)build the colour tables for the legends.
 
void BuildOwnerLegend ()
 Completes the array for the owned property legend.
 
static uint32_t ApplyMask (uint32_t colour, const AndOr *mask)
 
static uint32_t GetSmallMapContoursPixels (TileIndex tile, TileType t)
 Return the colour a tile would be displayed with in the small map in mode "Contour". More...
 
static uint32_t GetSmallMapVehiclesPixels (TileIndex, TileType t)
 Return the colour a tile would be displayed with in the small map in mode "Vehicles". More...
 
static uint32_t GetSmallMapIndustriesPixels (TileIndex tile, TileType t)
 Return the colour a tile would be displayed with in the small map in mode "Industries". More...
 
static uint32_t GetSmallMapRoutesPixels (TileIndex tile, TileType t)
 Return the colour a tile would be displayed with in the small map in mode "Routes". More...
 
static uint32_t GetSmallMapLinkStatsPixels (TileIndex tile, TileType t)
 Return the colour a tile would be displayed with in the small map in mode "link stats". More...
 
static uint32_t GetSmallMapVegetationPixels (TileIndex tile, TileType t)
 Return the colour a tile would be displayed with in the smallmap in mode "Vegetation". More...
 
uint32_t GetSmallMapOwnerPixels (TileIndex tile, TileType t, IncludeHeightmap include_heightmap)
 Return the colour a tile would be displayed with in the small map in mode "Owner". More...
 
static std::unique_ptr< NWidgetBaseSmallMapDisplay ()
 
void ShowSmallMap ()
 Show the smallmap window.
 
bool ScrollMainWindowTo (int x, int y, int z, bool instant)
 Scrolls the main window to given coordinates. More...
 
Point GetSmallMapStationMiddle (const Window *w, const Station *st)
 Determine the middle of a station in the smallmap window. More...
 

Variables

static int _smallmap_industry_count
 Number of used industries.
 
static int _smallmap_company_count
 Number of entries in the owner legend.
 
static int _smallmap_cargo_count
 Number of cargos in the link stats legend.
 
static uint8_t _linkstat_colours_in_legenda [] = {0, 1, 3, 5, 7, 9, 11}
 Link stat colours shown in legenda.
 
static const int NUM_NO_COMPANY_ENTRIES = 4
 Number of entries in the owner legend that are not companies.
 
static LegendAndColour _legend_land_contours []
 Legend text giving the colours to look for on the minimap. More...
 
static const LegendAndColour _legend_vehicles []
 
static const LegendAndColour _legend_routes []
 
static const LegendAndColour _legend_vegetation []
 
static LegendAndColour _legend_land_owners [NUM_NO_COMPANY_ENTRIES+MAX_COMPANIES+1]
 
static LegendAndColour _legend_linkstats [NUM_CARGO+lengthof(_linkstat_colours_in_legenda)+1]
 Legend entries for the link stats view.
 
static LegendAndColour _legend_from_industries [NUM_INDUSTRYTYPES+1]
 Allow room for all industries, plus a terminator entry This is required in order to have the industry slots all filled up.
 
static uint _industry_to_list_pos [NUM_INDUSTRYTYPES]
 For connecting industry type to position in industries list(small map legend)
 
static uint16_t _industry_to_name_string_width [NUM_INDUSTRYTYPES]
 The string bounding box width for each industry type in the smallmap.
 
static bool _smallmap_show_heightmap = false
 Show heightmap in industry and owner mode of smallmap window.
 
static IndustryType _smallmap_industry_highlight = INVALID_INDUSTRYTYPE
 Highlight a specific industry type.
 
static bool _smallmap_industry_highlight_state
 State of highlight blinking.
 
static uint _company_to_list_pos [MAX_COMPANIES]
 For connecting company ID to position in owner list (small map legend)
 
static const LegendAndColour *const _legend_table []
 
static SmallMapColourScheme _heightmap_schemes []
 Available colour schemes for height maps. More...
 
static const AndOr _smallmap_contours_andor []
 Colour masks for "Contour" and "Routes" modes. More...
 
static const AndOr _smallmap_vehicles_andor []
 Colour masks for "Vehicles", "Industry", and "Vegetation" modes. More...
 
static const uint8_t _tiletype_importance []
 Mapping of tile type to importance of the tile (higher number means more interesting to show). More...
 
static const uint32_t _vegetation_clear_bits []
 
static const uint8_t _vehicle_type_colours [6]
 Vehicle colours in #SMT_VEHICLES mode. More...
 
static constexpr NWidgetPart _nested_smallmap_display []
 Widget parts of the smallmap display. More...
 
static constexpr NWidgetPart _nested_smallmap_bar []
 Widget parts of the smallmap legend bar + image buttons.
 
static constexpr NWidgetPart _nested_smallmap_widgets []
 
static WindowDesc _smallmap_desc (WDP_AUTO, "smallmap", 484, 314, WC_SMALLMAP, WC_NONE, 0, _nested_smallmap_widgets)
 

Detailed Description

GUI that shows a small map of the world with metadata like owner or height.

Definition in file smallmap_gui.cpp.

Macro Definition Documentation

◆ MS

#define MS (   a,
 
)    {a, b, INVALID_INDUSTRYTYPE, 0, INVALID_COMPANY, true, false, true}

Macro for break marker in arrays of LegendAndColour.

It will have valid data, though

Definition at line 81 of file smallmap_gui.cpp.

Function Documentation

◆ GetSmallMapContoursPixels()

static uint32_t GetSmallMapContoursPixels ( TileIndex  tile,
TileType  t 
)
inlinestatic

Return the colour a tile would be displayed with in the small map in mode "Contour".

Parameters
tileThe tile of which we would like to get the colour.
tEffective tile type of the tile (see SmallMapWindow::GetTileColours).
Returns
The colour of tile in the small map in mode "Contour"

Definition at line 429 of file smallmap_gui.cpp.

References _heightmap_schemes, _settings_client, ClientSettings::gui, and GUISettings::smallmap_land_colour.

Referenced by GetSmallMapLinkStatsPixels().

◆ GetSmallMapIndustriesPixels()

static uint32_t GetSmallMapIndustriesPixels ( TileIndex  tile,
TileType  t 
)
inlinestatic

Return the colour a tile would be displayed with in the small map in mode "Industries".

Parameters
tileThe tile of which we would like to get the colour.
tEffective tile type of the tile (see SmallMapWindow::GetTileColours).
Returns
The colour of tile in the small map in mode "Industries"

Definition at line 455 of file smallmap_gui.cpp.

References _heightmap_schemes, _settings_client, ClientSettings::gui, and GUISettings::smallmap_land_colour.

◆ GetSmallMapLinkStatsPixels()

static uint32_t GetSmallMapLinkStatsPixels ( TileIndex  tile,
TileType  t 
)
inlinestatic

Return the colour a tile would be displayed with in the small map in mode "link stats".

Parameters
tileThe tile of which we would like to get the colour.
tEffective tile type of the tile (see SmallMapWindow::GetTileColours).
Returns
The colour of tile in the small map in mode "link stats"

Definition at line 524 of file smallmap_gui.cpp.

References _smallmap_show_heightmap, GetSmallMapContoursPixels(), and GetSmallMapRoutesPixels().

◆ GetSmallMapOwnerPixels()

uint32_t GetSmallMapOwnerPixels ( TileIndex  tile,
TileType  t,
IncludeHeightmap  include_heightmap 
)

Return the colour a tile would be displayed with in the small map in mode "Owner".

Note
If include_heightmap is IH_NEVER, the return value can safely be used as a palette colour (by masking it to a uint8_t)
Parameters
tileThe tile of which we would like to get the colour.
tEffective tile type of the tile (see SmallMapWindow::GetTileColours).
include_heightmapWhether to return the heightmap/contour colour of this tile (instead of the default land tile colour)
Returns
The colour of tile in the small map in mode "Owner"

Definition at line 580 of file smallmap_gui.cpp.

References MP_VOID.

◆ GetSmallMapRoutesPixels()

static uint32_t GetSmallMapRoutesPixels ( TileIndex  tile,
TileType  t 
)
inlinestatic

Return the colour a tile would be displayed with in the small map in mode "Routes".

Parameters
tileThe tile of which we would like to get the colour.
tEffective tile type of the tile (see SmallMapWindow::GetTileColours).
Returns
The colour of tile in the small map in mode "Routes"

Definition at line 468 of file smallmap_gui.cpp.

References GetStationType(), and MP_STATION.

Referenced by GetSmallMapLinkStatsPixels().

◆ GetSmallMapStationMiddle()

Point GetSmallMapStationMiddle ( const Window w,
const Station st 
)

Determine the middle of a station in the smallmap window.

Parameters
stThe station we're looking for.
Returns
Middle point of the station in the smallmap window.

Definition at line 2097 of file smallmap_gui.cpp.

◆ GetSmallMapVegetationPixels()

static uint32_t GetSmallMapVegetationPixels ( TileIndex  tile,
TileType  t 
)
inlinestatic

Return the colour a tile would be displayed with in the smallmap in mode "Vegetation".

Parameters
tileThe tile of which we would like to get the colour.
tEffective tile type of the tile (see SmallMapWindow::GetTileColours).
Returns
The colour of tile in the smallmap in mode "Vegetation"

Definition at line 547 of file smallmap_gui.cpp.

References CLEAR_GRASS, GetClearDensity(), IsClearGround(), and MP_CLEAR.

◆ GetSmallMapVehiclesPixels()

static uint32_t GetSmallMapVehiclesPixels ( TileIndex  ,
TileType  t 
)
inlinestatic

Return the colour a tile would be displayed with in the small map in mode "Vehicles".

Parameters
tileThe tile of which we would like to get the colour.
tEffective tile type of the tile (see SmallMapWindow::GetTileColours).
Returns
The colour of tile in the small map in mode "Vehicles"

Definition at line 442 of file smallmap_gui.cpp.

References _heightmap_schemes, _settings_client, ClientSettings::gui, and GUISettings::smallmap_land_colour.

◆ ScrollMainWindowTo()

bool ScrollMainWindowTo ( int  x,
int  y,
int  z,
bool  instant 
)

Scrolls the main window to given coordinates.

Parameters
xx coordinate
yy coordinate
zz coordinate; -1 to scroll to terrain height
instantscroll instantly (meaningful only when smooth_scrolling is active)
Returns
did the viewport position change?

Definition at line 2076 of file smallmap_gui.cpp.

Referenced by ScrollMainWindowToTile().

Variable Documentation

◆ _heightmap_schemes

SmallMapColourScheme _heightmap_schemes[]
static
Initial value:
= {
{{}, _green_map_heights, MKCOLOUR_XXXX(0x54)},
{{}, _dark_green_map_heights, MKCOLOUR_XXXX(0x62)},
{{}, _violet_map_heights, MKCOLOUR_XXXX(0x81)},
}
static const uint32_t _violet_map_heights[]
Height map colours for the violet colour scheme, ordered by height.
static const uint32_t _dark_green_map_heights[]
Height map colours for the dark green colour scheme, ordered by height.
static const uint32_t _green_map_heights[]
Height map colours for the green colour scheme, ordered by height.

Available colour schemes for height maps.

Definition at line 281 of file smallmap_gui.cpp.

Referenced by BuildLandLegend(), GetSmallMapContoursPixels(), GetSmallMapIndustriesPixels(), GetSmallMapVehiclesPixels(), and SmallMapWindow::RebuildColourIndexIfNecessary().

◆ _legend_land_contours

LegendAndColour _legend_land_contours[]
static
Initial value:
= {
MK(PC_BLACK, STR_SMALLMAP_LEGENDA_ROADS),
MK(PC_GREY, STR_SMALLMAP_LEGENDA_RAILROADS),
MK(PC_LIGHT_BLUE, STR_SMALLMAP_LEGENDA_STATIONS_AIRPORTS_DOCKS),
MK(PC_DARK_RED, STR_SMALLMAP_LEGENDA_BUILDINGS_INDUSTRIES),
MK(PC_WHITE, STR_SMALLMAP_LEGENDA_VEHICLES),
MC(true),
MC(false),
MC(false),
MC(false),
MC(false),
MC(false),
MC(true),
MC(false),
MC(false),
MC(false),
MC(false),
MC(false),
}
static const uint8_t PC_GREY
Grey palette colour.
Definition: palette_func.h:69
static const uint8_t PC_WHITE
White palette colour.
Definition: palette_func.h:70
static const uint8_t PC_LIGHT_BLUE
Light blue palette colour.
Definition: palette_func.h:88
static const uint8_t PC_BLACK
Black palette colour.
Definition: palette_func.h:67
static const uint8_t PC_DARK_RED
Dark red palette colour.
Definition: palette_func.h:73
#define MK(a, b)
Macro for ordinary entry of LegendAndColour.
#define MC(col_break)
Macro for a height legend entry with configurable colour.

Legend text giving the colours to look for on the minimap.

Definition at line 84 of file smallmap_gui.cpp.

Referenced by BuildLandLegend().

◆ _legend_land_owners

LegendAndColour _legend_land_owners[NUM_NO_COMPANY_ENTRIES+MAX_COMPANIES+1]
static
Initial value:
= {
MO(PC_WATER, STR_SMALLMAP_LEGENDA_WATER),
MO(0x00, STR_SMALLMAP_LEGENDA_NO_OWNER),
MO(PC_DARK_RED, STR_SMALLMAP_LEGENDA_TOWNS),
MO(PC_DARK_GREY, STR_SMALLMAP_LEGENDA_INDUSTRIES),
MOEND(),
}
static const uint8_t PC_DARK_GREY
Dark grey palette colour.
Definition: palette_func.h:68
static const uint8_t PC_WATER
Dark blue palette colour for water.
Definition: palette_func.h:96
#define MOEND()
Macro used for forcing a rebuild of the owner legend the first time it is used.
#define MO(a, b)
Macro for non-company owned property entry of LegendAndColour.

Definition at line 150 of file smallmap_gui.cpp.

◆ _legend_routes

const LegendAndColour _legend_routes[]
static
Initial value:
= {
MK(PC_BLACK, STR_SMALLMAP_LEGENDA_ROADS),
MK(PC_GREY, STR_SMALLMAP_LEGENDA_RAILROADS),
MK(PC_DARK_RED, STR_SMALLMAP_LEGENDA_BUILDINGS_INDUSTRIES),
MS(PC_VERY_DARK_BROWN, STR_SMALLMAP_LEGENDA_RAILROAD_STATION),
MK(PC_ORANGE, STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY),
MK(PC_YELLOW, STR_SMALLMAP_LEGENDA_BUS_STATION),
MK(PC_RED, STR_SMALLMAP_LEGENDA_AIRPORT_HELIPORT),
MK(PC_LIGHT_BLUE, STR_SMALLMAP_LEGENDA_DOCK),
}
static const uint8_t PC_ORANGE
Orange palette colour.
Definition: palette_func.h:78
static const uint8_t PC_RED
Red palette colour.
Definition: palette_func.h:74
static const uint8_t PC_VERY_DARK_BROWN
Almost-black brown palette colour.
Definition: palette_func.h:76
static const uint8_t PC_YELLOW
Yellow palette colour.
Definition: palette_func.h:80
#define MS(a, b)
Macro for break marker in arrays of LegendAndColour.

Definition at line 120 of file smallmap_gui.cpp.

◆ _legend_table

const LegendAndColour* const _legend_table[]
static
Initial value:
= {
_legend_vehicles,
_legend_routes,
_legend_vegetation,
_legend_land_owners,
}
static LegendAndColour _legend_from_industries[NUM_INDUSTRYTYPES+1]
Allow room for all industries, plus a terminator entry This is required in order to have the industry...
static LegendAndColour _legend_land_contours[]
Legend text giving the colours to look for on the minimap.
static LegendAndColour _legend_linkstats[NUM_CARGO+lengthof(_linkstat_colours_in_legenda)+1]
Legend entries for the link stats view.

Definition at line 249 of file smallmap_gui.cpp.

◆ _legend_vegetation

const LegendAndColour _legend_vegetation[]
static
Initial value:
= {
MK(PC_ROUGH_LAND, STR_SMALLMAP_LEGENDA_ROUGH_LAND),
MK(PC_GRASS_LAND, STR_SMALLMAP_LEGENDA_GRASS_LAND),
MK(PC_BARE_LAND, STR_SMALLMAP_LEGENDA_BARE_LAND),
MK(PC_RAINFOREST, STR_SMALLMAP_LEGENDA_RAINFOREST),
MK(PC_FIELDS, STR_SMALLMAP_LEGENDA_FIELDS),
MK(PC_TREES, STR_SMALLMAP_LEGENDA_TREES),
MS(PC_GREEN, STR_SMALLMAP_LEGENDA_FOREST),
MK(PC_GREY, STR_SMALLMAP_LEGENDA_ROCKS),
MK(PC_ORANGE, STR_SMALLMAP_LEGENDA_DESERT),
MK(PC_LIGHT_BLUE, STR_SMALLMAP_LEGENDA_SNOW),
MK(PC_BLACK, STR_SMALLMAP_LEGENDA_TRANSPORT_ROUTES),
MK(PC_DARK_RED, STR_SMALLMAP_LEGENDA_BUILDINGS_INDUSTRIES),
}
static const uint8_t PC_TREES
Green palette colour for trees.
Definition: palette_func.h:95
static const uint8_t PC_GREEN
Green palette colour.
Definition: palette_func.h:84
static const uint8_t PC_FIELDS
Light brown palette colour for fields.
Definition: palette_func.h:94
static const uint8_t PC_ROUGH_LAND
Dark green palette colour for rough land.
Definition: palette_func.h:90
static const uint8_t PC_BARE_LAND
Brown palette colour for bare land.
Definition: palette_func.h:92
static const uint8_t PC_GRASS_LAND
Dark green palette colour for grass land.
Definition: palette_func.h:91
static const uint8_t PC_RAINFOREST
Pale green palette colour for rainforest.
Definition: palette_func.h:93

Definition at line 133 of file smallmap_gui.cpp.

◆ _legend_vehicles

const LegendAndColour _legend_vehicles[]
static
Initial value:
= {
MK(PC_RED, STR_SMALLMAP_LEGENDA_TRAINS),
MK(PC_YELLOW, STR_SMALLMAP_LEGENDA_ROAD_VEHICLES),
MK(PC_LIGHT_BLUE, STR_SMALLMAP_LEGENDA_SHIPS),
MK(PC_WHITE, STR_SMALLMAP_LEGENDA_AIRCRAFT),
MS(PC_BLACK, STR_SMALLMAP_LEGENDA_TRANSPORT_ROUTES),
MK(PC_DARK_RED, STR_SMALLMAP_LEGENDA_BUILDINGS_INDUSTRIES),
}

Definition at line 109 of file smallmap_gui.cpp.

◆ _nested_smallmap_display

constexpr NWidgetPart _nested_smallmap_display[]
staticconstexpr
Initial value:
= {
NWidget(WWT_INSET, COLOUR_BROWN, WID_SM_MAP), SetMinimalSize(346, 140), SetResize(1, 1), SetPadding(2, 2, 2, 2), EndContainer(),
}
constexpr NWidgetPart SetPadding(uint8_t top, uint8_t right, uint8_t bottom, uint8_t left)
Widget part function for setting additional space around a widget.
Definition: widget_type.h:1228
constexpr NWidgetPart SetMinimalSize(int16_t x, int16_t y)
Widget part function for setting the minimal size.
Definition: widget_type.h:1137
constexpr NWidgetPart NWidget(WidgetType tp, Colours col, WidgetID idx=-1)
Widget part function for starting a new 'real' widget.
Definition: widget_type.h:1309
constexpr NWidgetPart EndContainer()
Widget part function for denoting the end of a container (horizontal, vertical, WWT_FRAME,...
Definition: widget_type.h:1191
constexpr NWidgetPart SetResize(int16_t dx, int16_t dy)
Widget part function for setting the resize step.
Definition: widget_type.h:1126
@ WID_SM_MAP_BORDER
Border around the smallmap.
@ WID_SM_MAP
Panel containing the smallmap.
@ WWT_INSET
Pressed (inset) panel, most commonly used as combo box text area.
Definition: widget_type.h:51
@ WWT_PANEL
Simple depressed panel.
Definition: widget_type.h:50

Widget parts of the smallmap display.

Definition at line 1964 of file smallmap_gui.cpp.

◆ _smallmap_contours_andor

const AndOr _smallmap_contours_andor[]
static
Initial value:
= {
{MKCOLOUR_0000 , MKCOLOUR_FFFF},
{MKCOLOUR_0XX0(PC_GREY ), MKCOLOUR_F00F},
{MKCOLOUR_0XX0(PC_BLACK ), MKCOLOUR_F00F},
{MKCOLOUR_0XX0(PC_DARK_RED ), MKCOLOUR_F00F},
{MKCOLOUR_0000 , MKCOLOUR_FFFF},
{MKCOLOUR_XXXX(PC_LIGHT_BLUE), MKCOLOUR_0000},
{MKCOLOUR_XXXX(PC_WATER ), MKCOLOUR_0000},
{MKCOLOUR_0000 , MKCOLOUR_FFFF},
{MKCOLOUR_XXXX(PC_DARK_RED ), MKCOLOUR_0000},
{MKCOLOUR_0000 , MKCOLOUR_FFFF},
{MKCOLOUR_0XX0(PC_DARK_RED ), MKCOLOUR_F00F},
{MKCOLOUR_0XX0(PC_GREY ), MKCOLOUR_F00F},
}

Colour masks for "Contour" and "Routes" modes.

Definition at line 375 of file smallmap_gui.cpp.

◆ _smallmap_vehicles_andor

const AndOr _smallmap_vehicles_andor[]
static
Initial value:
= {
{MKCOLOUR_0000 , MKCOLOUR_FFFF},
{MKCOLOUR_0XX0(PC_BLACK ), MKCOLOUR_F00F},
{MKCOLOUR_0XX0(PC_BLACK ), MKCOLOUR_F00F},
{MKCOLOUR_0XX0(PC_DARK_RED ), MKCOLOUR_F00F},
{MKCOLOUR_0000 , MKCOLOUR_FFFF},
{MKCOLOUR_0XX0(PC_BLACK ), MKCOLOUR_F00F},
{MKCOLOUR_XXXX(PC_WATER ), MKCOLOUR_0000},
{MKCOLOUR_0000 , MKCOLOUR_FFFF},
{MKCOLOUR_XXXX(PC_DARK_RED ), MKCOLOUR_0000},
{MKCOLOUR_0000 , MKCOLOUR_FFFF},
{MKCOLOUR_0XX0(PC_DARK_RED ), MKCOLOUR_F00F},
{MKCOLOUR_0XX0(PC_BLACK ), MKCOLOUR_F00F},
}

Colour masks for "Vehicles", "Industry", and "Vegetation" modes.

Definition at line 391 of file smallmap_gui.cpp.

◆ _tiletype_importance

const uint8_t _tiletype_importance[]
static
Initial value:
= {
2,
8,
7,
5,
2,
9,
2,
1,
6,
8,
2,
0,
}

Mapping of tile type to importance of the tile (higher number means more interesting to show).

Definition at line 407 of file smallmap_gui.cpp.

◆ _vegetation_clear_bits

const uint32_t _vegetation_clear_bits[]
static
Initial value:
= {
MKCOLOUR_XXXX(PC_GRASS_LAND),
MKCOLOUR_XXXX(PC_ROUGH_LAND),
MKCOLOUR_XXXX(PC_GREY),
MKCOLOUR_XXXX(PC_FIELDS),
MKCOLOUR_XXXX(PC_LIGHT_BLUE),
MKCOLOUR_XXXX(PC_ORANGE),
MKCOLOUR_XXXX(PC_GRASS_LAND),
MKCOLOUR_XXXX(PC_GRASS_LAND),
}

Definition at line 529 of file smallmap_gui.cpp.

◆ _vehicle_type_colours

const uint8_t _vehicle_type_colours[6]
static
Initial value:

Vehicle colours in #SMT_VEHICLES mode.

Indexed by VehicleType.

Definition at line 608 of file smallmap_gui.cpp.