OpenTTD Source: src/table/airporttiles.h Source File

OpenTTD Source 15.0-RC2

airporttiles.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 <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
6 */
7
10#ifndef AIRPORTTILES_H
11#define AIRPORTTILES_H
12
13#include "table/strings.h"
14
16#define AT(num_frames, anim_speed) {{num_frames, AnimationStatus::Looping, anim_speed, {}}, STR_NULL, AirportTileCallbackMasks{}, 0, true, SubstituteGRFFileProps(INVALID_AIRPORTTILE), {}}
18#define AT_NOANIM {AnimationInfo<AirportAnimationTriggers>{}, STR_NULL, AirportTileCallbackMasks{}, 0, true, SubstituteGRFFileProps(INVALID_AIRPORTTILE), {}}
19
24 static const AirportTileSpec _origin_airporttile_specs[] = {
25 /* 0..9 */
26 AT_NOANIM,
27 AT_NOANIM,
28 AT_NOANIM,
29 AT_NOANIM,
30 AT_NOANIM,
31 AT_NOANIM,
32 AT_NOANIM,
33 AT_NOANIM,
34 AT_NOANIM,
35 AT_NOANIM,
36
37 AT_NOANIM,
38 AT_NOANIM,
39 AT_NOANIM,
40 AT_NOANIM,
41 AT_NOANIM,
42 AT_NOANIM,
43 AT_NOANIM,
44 AT_NOANIM,
45 AT_NOANIM,
46 AT_NOANIM,
47
48 AT_NOANIM,
49 AT_NOANIM,
50 AT_NOANIM,
51 AT_NOANIM,
52 AT_NOANIM,
53 AT_NOANIM,
54 AT_NOANIM,
55 AT_NOANIM,
56 AT_NOANIM,
57 AT_NOANIM,
58
59 AT_NOANIM,
60 AT(11, 2), // APT_RADAR_GRASS_FENCE_SW
61 AT_NOANIM,
62 AT_NOANIM,
63 AT_NOANIM,
64 AT_NOANIM,
65 AT_NOANIM,
66 AT_NOANIM,
67 AT_NOANIM,
68 AT(3, 1), // APT_GRASS_FENCE_NE_FLAG
69
70 AT_NOANIM,
71 AT_NOANIM,
72 AT_NOANIM,
73 AT_NOANIM,
74 AT_NOANIM,
75 AT_NOANIM,
76 AT_NOANIM,
77 AT_NOANIM,
78 AT_NOANIM,
79 AT_NOANIM,
80
81 AT_NOANIM,
82 AT(11, 2), // APT_RADAR_FENCE_SW
83 AT(11, 2), // APT_RADAR_FENCE_NE
84 AT_NOANIM,
85 AT_NOANIM,
86 AT_NOANIM,
87 AT_NOANIM,
88 AT_NOANIM,
89 AT_NOANIM,
90 AT_NOANIM,
91
92 AT_NOANIM,
93 AT_NOANIM,
94 AT_NOANIM,
95 AT_NOANIM,
96 AT_NOANIM,
97 AT_NOANIM,
98 AT_NOANIM,
99 AT_NOANIM,
100 AT_NOANIM,
101 AT_NOANIM,
102
103 AT_NOANIM,
104 AT_NOANIM,
105 AT_NOANIM,
106 AT(3, 1), // APT_GRASS_FENCE_NE_FLAG_2
107};
108
109static_assert(NEW_AIRPORTTILE_OFFSET == lengthof(_origin_airporttile_specs));
110
111#undef AT_NOANIM
112#undef AT
113
114#endif /* AIRPORTTILES_H */
NEW_AIRPORTTILE_OFFSET
static const uint NEW_AIRPORTTILE_OFFSET
offset of first newgrf airport tile
Definition airport.h:24
AT
#define AT(num_frames, anim_speed)
Writes all airport tile properties in the AirportTile struct.
Definition airporttiles.h:16
AT_NOANIM
#define AT_NOANIM
Writes an airport tile without animation in the AirportTile struct.
Definition airporttiles.h:18
_origin_airporttile_specs
static const AirportTileSpec _origin_airporttile_specs[]
All default airport tiles.
Definition airporttiles.h:24
lengthof
#define lengthof(array)
Return the length of an fixed size array.
Definition stdafx.h:271
AirportTileSpec
Defines the data structure of each individual tile of an airport.
Definition newgrf_airporttiles.h:70