From 5885b31bb41066c2c5b01162570e3aab91ed9f23 Mon Sep 17 00:00:00 2001 From: tron Date: Sat, 29 Jan 2005 12:19:05 +0000 Subject: [PATCH] (svn r1713) Split off several functions which query/set information about a single tile from map.h and put them into a seperate file tile.h --- ai.c | 1 + ai_build.c | 1 + ai_new.c | 1 + ai_pathfinder.c | 1 + aircraft_cmd.c | 1 + aircraft_gui.c | 1 + clear_cmd.c | 1 + disaster_cmd.c | 1 + industry_cmd.c | 1 + landscape.c | 1 + main_gui.c | 1 + map.h | 38 -------------------------------------- oldloader.c | 1 + order_gui.c | 1 + pathfind.c | 1 + rail_cmd.c | 1 + rail_gui.c | 1 + road_cmd.c | 1 + road_gui.c | 1 + roadveh_cmd.c | 1 + ship_cmd.c | 1 + smallmap_gui.c | 1 + station_cmd.c | 1 + tile.h | 43 +++++++++++++++++++++++++++++++++++++++++++ town_cmd.c | 1 + train_cmd.c | 1 + tree_cmd.c | 1 + ttd.c | 1 + tunnelbridge_cmd.c | 1 + unmovable_cmd.c | 1 + vehicle.c | 1 + water_cmd.c | 1 + 32 files changed, 73 insertions(+), 38 deletions(-) create mode 100644 tile.h diff --git a/ai.c b/ai.c index 8abe5f6558..598ab4d4a8 100644 --- a/ai.c +++ b/ai.c @@ -1,6 +1,7 @@ #include "stdafx.h" #include "ttd.h" #include "map.h" +#include "tile.h" #include "player.h" #include "vehicle.h" #include "engine.h" diff --git a/ai_build.c b/ai_build.c index f5745f62cc..f53d7793f2 100644 --- a/ai_build.c +++ b/ai_build.c @@ -1,6 +1,7 @@ #include "stdafx.h" #include "ttd.h" #include "map.h" +#include "tile.h" #include "command.h" #include "ai.h" #include "engine.h" diff --git a/ai_new.c b/ai_new.c index a62c31eb71..1699f7a4ad 100644 --- a/ai_new.c +++ b/ai_new.c @@ -17,6 +17,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "command.h" #include "ai.h" #include "town.h" diff --git a/ai_pathfinder.c b/ai_pathfinder.c index 5c05879ad0..4510c60f42 100644 --- a/ai_pathfinder.c +++ b/ai_pathfinder.c @@ -1,6 +1,7 @@ #include "stdafx.h" #include "ttd.h" #include "map.h" +#include "tile.h" #include "command.h" #include "ai.h" diff --git a/aircraft_cmd.c b/aircraft_cmd.c index 59f2fe1a69..e1a4863290 100644 --- a/aircraft_cmd.c +++ b/aircraft_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "engine.h" #include "command.h" diff --git a/aircraft_gui.c b/aircraft_gui.c index c06485e253..7526d35835 100644 --- a/aircraft_gui.c +++ b/aircraft_gui.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "window.h" #include "gui.h" #include "vehicle.h" diff --git a/clear_cmd.c b/clear_cmd.c index a3095646b4..4bac5c3040 100644 --- a/clear_cmd.c +++ b/clear_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "viewport.h" #include "command.h" diff --git a/disaster_cmd.c b/disaster_cmd.c index 528019f635..e7d5f23932 100644 --- a/disaster_cmd.c +++ b/disaster_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "command.h" #include "news.h" diff --git a/industry_cmd.c b/industry_cmd.c index 9849e1321a..9836d16f70 100644 --- a/industry_cmd.c +++ b/industry_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "viewport.h" #include "command.h" #include "industry.h" diff --git a/landscape.c b/landscape.c index ef99846925..4e14682fd8 100644 --- a/landscape.c +++ b/landscape.c @@ -1,6 +1,7 @@ #include "stdafx.h" #include "ttd.h" #include "map.h" +#include "tile.h" #include #include "gfx.h" #include "viewport.h" diff --git a/main_gui.c b/main_gui.c index 974c7b0b98..ab1fc38449 100644 --- a/main_gui.c +++ b/main_gui.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "window.h" #include "gui.h" #include "viewport.h" diff --git a/map.h b/map.h index f37245dfbb..a786e10a35 100644 --- a/map.h +++ b/map.h @@ -76,42 +76,4 @@ static inline TileIndexDiff TileOffsByDir(uint dir) return ToTileIndexDiff(_tileoffs_by_dir[dir]); } - -static inline uint TileHeight(TileIndex tile) -{ - assert(tile < MapSize()); - return _map_type_and_height[tile] & 0xf; -} - -static inline void SetTileHeight(TileIndex tile, uint height) -{ - assert(tile < MapSize()); - assert(height < 16); - _map_type_and_height[tile] &= ~0x0F; - _map_type_and_height[tile] |= height; -} - -static inline uint TilePixelHeight(TileIndex tile) -{ - return TileHeight(tile) * 8; -} - -static inline int TileType(TileIndex tile) -{ - assert(tile < MapSize()); - return _map_type_and_height[tile] >> 4; -} - -static inline void SetTileType(TileIndex tile, uint type) -{ - assert(tile < MapSize()); - _map_type_and_height[tile] &= ~0xF0; - _map_type_and_height[tile] |= type << 4; -} - -static inline bool IsTileType(TileIndex tile, int type) -{ - return TileType(tile) == type; -} - #endif diff --git a/oldloader.c b/oldloader.c index b8b9fb1555..07a4dde3fa 100644 --- a/oldloader.c +++ b/oldloader.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "town.h" #include "industry.h" #include "station.h" diff --git a/order_gui.c b/order_gui.c index 02921ad15a..f944a6e48b 100644 --- a/order_gui.c +++ b/order_gui.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "window.h" #include "gui.h" #include "gfx.h" diff --git a/pathfind.c b/pathfind.c index 6fe7d414ae..58eaba04aa 100644 --- a/pathfind.c +++ b/pathfind.c @@ -1,6 +1,7 @@ #include "stdafx.h" #include "ttd.h" #include "map.h" +#include "tile.h" #include "pathfind.h" // remember which tiles we have already visited so we don't visit them again. diff --git a/rail_cmd.c b/rail_cmd.c index c768edb621..f6f8944f0a 100644 --- a/rail_cmd.c +++ b/rail_cmd.c @@ -3,6 +3,7 @@ #include "table/strings.h" #include "gfx.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "viewport.h" #include "command.h" diff --git a/rail_gui.c b/rail_gui.c index fa5dbfcaa2..050c83d7e7 100644 --- a/rail_gui.c +++ b/rail_gui.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "window.h" #include "gui.h" #include "viewport.h" diff --git a/road_cmd.c b/road_cmd.c index cfac45d592..a0d68637c4 100644 --- a/road_cmd.c +++ b/road_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "viewport.h" #include "command.h" diff --git a/road_gui.c b/road_gui.c index b3fa397ea0..04be3ac275 100644 --- a/road_gui.c +++ b/road_gui.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "window.h" #include "gui.h" #include "viewport.h" diff --git a/roadveh_cmd.c b/roadveh_cmd.c index efc03e98cf..9e34c797f8 100644 --- a/roadveh_cmd.c +++ b/roadveh_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "engine.h" #include "command.h" diff --git a/ship_cmd.c b/ship_cmd.c index 5efe58abb4..c7330b9d25 100644 --- a/ship_cmd.c +++ b/ship_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "command.h" #include "pathfind.h" diff --git a/smallmap_gui.c b/smallmap_gui.c index e86455aa02..eed9a9c6a8 100644 --- a/smallmap_gui.c +++ b/smallmap_gui.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "gui.h" #include "window.h" #include "gfx.h" diff --git a/station_cmd.c b/station_cmd.c index d9cd16a300..d43468307c 100644 --- a/station_cmd.c +++ b/station_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "station.h" #include "gfx.h" #include "window.h" diff --git a/tile.h b/tile.h new file mode 100644 index 0000000000..0019397dd8 --- /dev/null +++ b/tile.h @@ -0,0 +1,43 @@ +#ifndef TILE_H +#define TILE_H + +#include "map.h" + +static inline uint TileHeight(TileIndex tile) +{ + assert(tile < MapSize()); + return _map_type_and_height[tile] & 0xf; +} + +static inline void SetTileHeight(TileIndex tile, uint height) +{ + assert(tile < MapSize()); + assert(height < 16); + _map_type_and_height[tile] &= ~0x0F; + _map_type_and_height[tile] |= height; +} + +static inline uint TilePixelHeight(TileIndex tile) +{ + return TileHeight(tile) * 8; +} + +static inline int TileType(TileIndex tile) +{ + assert(tile < MapSize()); + return _map_type_and_height[tile] >> 4; +} + +static inline void SetTileType(TileIndex tile, uint type) +{ + assert(tile < MapSize()); + _map_type_and_height[tile] &= ~0xF0; + _map_type_and_height[tile] |= type << 4; +} + +static inline bool IsTileType(TileIndex tile, int type) +{ + return TileType(tile) == type; +} + +#endif diff --git a/town_cmd.c b/town_cmd.c index 836657ab6a..3f0a30c036 100644 --- a/town_cmd.c +++ b/town_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "viewport.h" #include "town.h" #include "command.h" diff --git a/train_cmd.c b/train_cmd.c index 43ca205530..3d55f2484a 100644 --- a/train_cmd.c +++ b/train_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "command.h" #include "pathfind.h" diff --git a/tree_cmd.c b/tree_cmd.c index bf9fbdb739..ec4f4f1a04 100644 --- a/tree_cmd.c +++ b/tree_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "viewport.h" #include "command.h" #include "town.h" diff --git a/ttd.c b/ttd.c index 0ebd341cf9..f4bfbb2345 100644 --- a/ttd.c +++ b/ttd.c @@ -1,6 +1,7 @@ #include "stdafx.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #define VARDEF #include "ttd.h" diff --git a/tunnelbridge_cmd.c b/tunnelbridge_cmd.c index 62418e2d30..04903d3755 100644 --- a/tunnelbridge_cmd.c +++ b/tunnelbridge_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "viewport.h" #include "command.h" diff --git a/unmovable_cmd.c b/unmovable_cmd.c index 129e22c28b..21f1c99bc0 100644 --- a/unmovable_cmd.c +++ b/unmovable_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "command.h" #include "viewport.h" #include "player.h" diff --git a/vehicle.c b/vehicle.c index 915da38da4..eb048a840a 100644 --- a/vehicle.c +++ b/vehicle.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "gfx.h" #include "viewport.h" diff --git a/water_cmd.c b/water_cmd.c index dfa7bd6cbd..082d50bcea 100644 --- a/water_cmd.c +++ b/water_cmd.c @@ -2,6 +2,7 @@ #include "ttd.h" #include "table/strings.h" #include "map.h" +#include "tile.h" #include "vehicle.h" #include "viewport.h" #include "command.h"