summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrichk <richk@openttd.org>2006-06-25 13:42:37 +0000
committerrichk <richk@openttd.org>2006-06-25 13:42:37 +0000
commit1423445050bc082344ad3433204372e478309cf5 (patch)
treeffe41531412d4f33ca9b61dd59a4655b8967ef21
parent1522fbb397c896f819e04b24a519312450c4a3b8 (diff)
downloadopenttd-1423445050bc082344ad3433204372e478309cf5.tar.xz
(svn r5362) - Fix: Updated sprites in New Airports to be allow cleaner replacement by newgrf graphics. All tiles now use SPR_AIRPORT_APRON as the tarmac. Created two new sprites in airports.grf for half-grass half-tarmac tiles on Intercontinental airport.
-rw-r--r--data/airports.grfbin9110 -> 9488 bytes
-rw-r--r--station_cmd.c18
-rw-r--r--station_map.h4
-rw-r--r--table/sprites.h2
-rw-r--r--table/station_land.h81
5 files changed, 71 insertions, 34 deletions
diff --git a/data/airports.grf b/data/airports.grf
index 339534afb..8c35d18d0 100644
--- a/data/airports.grf
+++ b/data/airports.grf
Binary files differ
diff --git a/station_cmd.c b/station_cmd.c
index 386a71a7a..27e4ebbf1 100644
--- a/station_cmd.c
+++ b/station_cmd.c
@@ -1603,12 +1603,12 @@ static const byte _airport_sections_intercontinental[] = {
102, 120, 89, 89, 89, 89, 89, 89, 118,
120, 22, 22, 22, 22, 22, 22, 119, 117,
87, 54, 87, 8, 8, 8, 8, 51, 117,
- 87, 18, 87, 85, 116, 116, 8, 9, 10,
+ 87, 162, 87, 85, 116, 116, 8, 9, 10,
87, 8, 8, 11, 31, 11, 8, 160, 32,
32, 160, 8, 11, 27, 11, 8, 8, 10,
87, 8, 8, 11, 30, 11, 8, 8, 10,
- 87, 142, 8, 11, 29, 11, 10, 12, 10,
- 87, 58, 87, 8, 8, 8, 10, 56, 117,
+ 87, 142, 8, 11, 29, 11, 10, 163, 10,
+ 87, 164, 87, 8, 8, 8, 10, 37, 117,
87, 120, 89, 89, 89, 89, 89, 89, 119,
121, 22, 22, 22, 22, 22, 22, 119, 37
};
@@ -2241,6 +2241,7 @@ static void TileLoop_Station(TileIndex tile)
case GFX_RADAR_INTERNATIONAL_FIRST:
case GFX_RADAR_METROPOLITAN_FIRST:
case GFX_RADAR_DISTRICTWE_FIRST: // radar district W-E airport
+ case GFX_WINDSACK_INTERCON_FIRST : // for intercontinental airport
AddAnimatedTile(tile);
break;
@@ -2300,6 +2301,17 @@ static void AnimateTile_Station(TileIndex tile)
SetStationGfx(tile, gfx);
MarkTileDirtyByTile(tile);
+ // handle intercontinental windsock
+ } else if (IS_BYTE_INSIDE(gfx, GFX_WINDSACK_INTERCON_FIRST, GFX_WINDSACK_INTERCON_LAST+1)) {
+ if (_tick_counter & 1)
+ return;
+
+ if (++gfx == GFX_WINDSACK_INTERCON_LAST+1) {
+ gfx = GFX_WINDSACK_INTERCON_FIRST;
+ }
+
+ SetStationGfx(tile, gfx);
+ MarkTileDirtyByTile(tile);
}
}
diff --git a/station_map.h b/station_map.h
index 9ed3de987..0f8167967 100644
--- a/station_map.h
+++ b/station_map.h
@@ -40,7 +40,9 @@ enum {
GFX_RADAR_METROPOLITAN_LAST = 113,
GFX_RADAR_DISTRICTWE_FIRST = 145,
GFX_RADAR_DISTRICTWE_LAST = 156,
- GFX_BASE_END = 161
+ GFX_WINDSACK_INTERCON_FIRST = 164,
+ GFX_WINDSACK_INTERCON_LAST = 167,
+ GFX_BASE_END = 167
};
enum {
diff --git a/table/sprites.h b/table/sprites.h
index cbebb555e..32b4b319c 100644
--- a/table/sprites.h
+++ b/table/sprites.h
@@ -94,6 +94,8 @@ enum Sprites {
SPR_NEWHANGAR_N = SPR_AIRPORTX_BASE + 10,
SPR_NEWHANGAR_E = SPR_AIRPORTX_BASE + 11,
SPR_NEWHELIPAD = SPR_AIRPORTX_BASE + 12,
+ SPR_GRASS_RIGHT = SPR_AIRPORTX_BASE + 13,
+ SPR_GRASS_LEFT = SPR_AIRPORTX_BASE + 14,
/* Manager face sprites */
SPR_GRADIENT = 874, // background gradient behind manager face
diff --git a/table/station_land.h b/table/station_land.h
index 65ed12f28..0700f97b9 100644
--- a/table/station_land.h
+++ b/table/station_land.h
@@ -983,6 +983,7 @@ static const DrawTileSeqStruct _station_display_datas_0156[] = {
// helipad for helistation
// concrete underground
static const DrawTileSeqStruct _station_display_datas_0157[] = {
+ { 0, 1, 2, 16, 11, 40, SPR_NEWHELIPAD },
{ 15, 0, 0, 1, 16, 6, SPR_AIRPORT_FENCE_Y | PALETTE_MODIFIER_COLOR }, // fences west
{ 0, 15, 0, 16, 1, 6, SPR_AIRPORT_FENCE_X | PALETTE_MODIFIER_COLOR }, // fences south
TILE_SEQ_END()
@@ -991,6 +992,7 @@ static const DrawTileSeqStruct _station_display_datas_0157[] = {
// helipad for helistation
// concrete underground
static const DrawTileSeqStruct _station_display_datas_0158[] = {
+ { 0, 1, 2, 16, 11, 40, SPR_NEWHELIPAD },
{ 15, 0, 0, 1, 16, 6, SPR_AIRPORT_FENCE_Y | PALETTE_MODIFIER_COLOR }, // fences west
{ 0, 0, 0, 16, 1, 6, SPR_AIRPORT_FENCE_X | PALETTE_MODIFIER_COLOR }, // fences north
TILE_SEQ_END()
@@ -999,6 +1001,7 @@ static const DrawTileSeqStruct _station_display_datas_0158[] = {
// helipad for helistation
// concrete underground
static const DrawTileSeqStruct _station_display_datas_0159[] = {
+ { 0, 1, 2, 16, 11, 40, SPR_NEWHELIPAD },
{ 0, 0, 0, 16, 1, 6, SPR_AIRPORT_FENCE_X | PALETTE_MODIFIER_COLOR }, // fences north
TILE_SEQ_END()
};
@@ -1016,6 +1019,18 @@ static const DrawTileSeqStruct _station_display_datas_0161[] = {
TILE_SEQ_END()
};
+// half grass half SPR_AIRPORT_APRON
+static const DrawTileSeqStruct _station_display_datas_0162[] = {
+ { 0, 0, 0, 0, 0, 0, SPR_GRASS_LEFT },
+ TILE_SEQ_END()
+};
+
+// half grass half SPR_AIRPORT_APRON
+static const DrawTileSeqStruct _station_display_datas_0163[] = {
+ { 0, 0, 0, 0, 0, 0, SPR_GRASS_RIGHT },
+ TILE_SEQ_END()
+};
+
static const DrawTileSprites _station_display_datas[] = {
{ SPR_RAIL_TRACK_X, _station_display_datas_0 },
{ SPR_RAIL_TRACK_Y, _station_display_datas_1 },
@@ -1146,37 +1161,43 @@ static const DrawTileSprites _station_display_datas[] = {
{ SPR_NSRUNWAY_END, _station_display_datas_0126 },
{ SPR_NSRUNWAY1, _station_display_datas_0127 },
{ SPR_NSRUNWAY_END, _station_display_datas_0128 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0129 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0130 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0131 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0132 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0133 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0134 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0135 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0136 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0137 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0129 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0130 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0131 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0132 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0133 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0134 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0135 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0136 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0137 },
{ SPR_AIRPORT_AIRCRAFT_STAND, _station_display_datas_0138 },
{ SPR_AIRPORT_AIRCRAFT_STAND, _station_display_datas_0139 },
{ SPR_AIRPORT_AIRCRAFT_STAND, _station_display_datas_0140 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0141 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0142 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0143 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0144 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0145 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0146 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0147 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0148 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0149 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0150 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0151 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0152 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0153 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0154 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0155 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0156 },
- { SPR_NEWHELIPAD, _station_display_datas_0157 },
- { SPR_NEWHELIPAD, _station_display_datas_0158 },
- { SPR_NEWHELIPAD, _station_display_datas_0159 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0160 },
- { SPR_NEWAIRPORT_TARMAC, _station_display_datas_0161 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0141 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0142 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0143 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0144 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0145 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0146 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0147 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0148 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0149 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0150 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0151 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0152 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0153 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0154 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0155 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0156 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0157 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0158 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0159 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0160 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0161 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0162 },
+ { SPR_AIRPORT_APRON, _station_display_datas_0163 },
+ { SPR_FLAT_GRASS_TILE, _station_display_datas_58 },
+ { SPR_FLAT_GRASS_TILE, _station_display_datas_59 },
+ { SPR_FLAT_GRASS_TILE, _station_display_datas_60 },
+ { SPR_FLAT_GRASS_TILE, _station_display_datas_61 },
};