From 07e3c096b3b744ef1d094c9481faa31ec8d2034a Mon Sep 17 00:00:00 2001 From: smatz Date: Tue, 18 Nov 2008 22:43:59 +0000 Subject: (svn r14591) -Fix [FS#2388](r14528): cached nearest town could be invalid after importing older savegame and during town generation -Codechange: rewrite parts of code responsible for caching index of nearest town --- src/road_map.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/road_map.h') diff --git a/src/road_map.h b/src/road_map.h index bc6639245..0131f2f05 100644 --- a/src/road_map.h +++ b/src/road_map.h @@ -189,10 +189,21 @@ static inline void SetRoadOwner(TileIndex t, RoadType rt, Owner o) static inline bool IsRoadOwner(TileIndex t, RoadType rt, Owner o) { - assert(rt == ROADTYPE_ROAD || HasTileRoadType(t, rt)); + assert(HasTileRoadType(t, rt)); return (GetRoadOwner(t, rt) == o); } +/** Checks if given tile has town owned road + * @param t tile to check + * @return true iff tile has road and the road is owned by a town + * @pre IsTileType(t, MP_ROAD) + */ +static inline bool HasTownOwnedRoad(TileIndex t) +{ + assert(IsTileType(t, MP_ROAD)); + return HasTileRoadType(t, ROADTYPE_ROAD) && IsRoadOwner(t, ROADTYPE_ROAD, OWNER_TOWN); +} + /** Which directions are disallowed ? */ enum DisallowedRoadDirections { DRD_NONE, ///< None of the directions are disallowed -- cgit v1.2.3-54-g00ecf