OpenTTD Source  20241108-master-g80f628063a
track_land.h
Go to the documentation of this file.
1 /*
2  * This file is part of OpenTTD.
3  * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
4  * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
5  * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
6  */
7 
10 #define TILE_SEQ_LINE(img, dx, dy, sx, sy) { dx, dy, 0, sx, sy, 23, {img, PAL_NONE} },
11 #define TILE_SEQ_END() { (int8_t)0x80, 0, 0, 0, 0, 0, {0, 0} }
12 
13 
14 static const DrawTileSeqStruct _depot_gfx_NE[] = {
15  TILE_SEQ_LINE(SPR_RAIL_DEPOT_NE | (1 << PALETTE_MODIFIER_COLOUR), 2, 13, 13, 1)
16  TILE_SEQ_END()
17 };
18 
19 static const DrawTileSeqStruct _depot_gfx_SE[] = {
20  TILE_SEQ_LINE(SPR_RAIL_DEPOT_SE_1 | (1 << PALETTE_MODIFIER_COLOUR), 2, 2, 1, 13)
21  TILE_SEQ_LINE(SPR_RAIL_DEPOT_SE_2 | (1 << PALETTE_MODIFIER_COLOUR), 13, 2, 1, 13)
22  TILE_SEQ_END()
23 };
24 
25 static const DrawTileSeqStruct _depot_gfx_SW[] = {
26  TILE_SEQ_LINE(SPR_RAIL_DEPOT_SW_1 | (1 << PALETTE_MODIFIER_COLOUR), 2, 2, 13, 1)
27  TILE_SEQ_LINE(SPR_RAIL_DEPOT_SW_2 | (1 << PALETTE_MODIFIER_COLOUR), 2, 13, 13, 1)
28  TILE_SEQ_END()
29 };
30 
31 static const DrawTileSeqStruct _depot_gfx_NW[] = {
32  TILE_SEQ_LINE(SPR_RAIL_DEPOT_NW | (1 << PALETTE_MODIFIER_COLOUR), 13, 2, 1, 13)
33  TILE_SEQ_END()
34 };
35 
36 static const DrawTileSprites _depot_gfx_table[] = {
37  { {SPR_FLAT_GRASS_TILE, PAL_NONE}, _depot_gfx_NE },
38  { {SPR_RAIL_TRACK_Y, PAL_NONE}, _depot_gfx_SE },
39  { {SPR_RAIL_TRACK_X, PAL_NONE}, _depot_gfx_SW },
40  { {SPR_FLAT_GRASS_TILE, PAL_NONE}, _depot_gfx_NW }
41 };
42 
43 static const DrawTileSprites _depot_invisible_gfx_table[] = {
44  { {SPR_RAIL_TRACK_X, PAL_NONE}, _depot_gfx_NE },
45  { {SPR_RAIL_TRACK_Y, PAL_NONE}, _depot_gfx_SE },
46  { {SPR_RAIL_TRACK_X, PAL_NONE}, _depot_gfx_SW },
47  { {SPR_RAIL_TRACK_Y, PAL_NONE}, _depot_gfx_NW }
48 };
49 
50 #undef TILE_SEQ_LINE
51 #undef TILE_SEQ_END
52 
static constexpr uint8_t PALETTE_MODIFIER_COLOUR
this bit is set when a recolouring process is in action
Definition: sprites.h:1548
A tile child sprite and palette to draw for stations etc, with 3D bounding box.
Definition: sprite.h:25
Ground palette sprite of a tile, together with its sprite layout.
Definition: sprite.h:58