diff options
-rw-r--r-- | src/newgrf.cpp | 8 | ||||
-rw-r--r-- | src/town_map.h | 8 |
2 files changed, 12 insertions, 4 deletions
diff --git a/src/newgrf.cpp b/src/newgrf.cpp index 5fe787877..5a7508b99 100644 --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -1538,6 +1538,14 @@ static bool TownHouseChangeInfo(uint hid, int numinfo, int prop, byte **bufp, in ret = true; } break; + case 0x21: // long introduction year + housespec->min_year = grf_load_word(&buf); + break; + + case 0x22: // long maximum year + housespec->max_year = grf_load_word(&buf); + break; + default: ret = true; break; diff --git a/src/town_map.h b/src/town_map.h index f8cc4c071..3b6263c6a 100644 --- a/src/town_map.h +++ b/src/town_map.h @@ -265,7 +265,7 @@ static inline void IncHouseConstructionTick(TileIndex t) } /** - * Set the year that this house was constructed (between 1920 and 2175). + * Set the year that this house was constructed. * @param t the tile of this house * @param year the year to set * @pre IsTileType(t, MP_HOUSE) && IsHouseCompleted(t) @@ -273,11 +273,11 @@ static inline void IncHouseConstructionTick(TileIndex t) static inline void SetHouseConstructionYear(TileIndex t, Year year) { assert(IsTileType(t, MP_HOUSE) && IsHouseCompleted(t)); - _m[t].m5 = Clamp(year - ORIGINAL_BASE_YEAR, 0, 0xFF); + _m[t].m5 = Clamp(year - GetHouseSpecs(GetHouseType(t))->min_year, 0, 0xFF); } /** - * Get the year that this house was constructed (between 1920 and 2175). + * Get the year that this house was constructed. * @param t the tile of this house * @pre IsTileType(t, MP_HOUSE) * @return year @@ -285,7 +285,7 @@ static inline void SetHouseConstructionYear(TileIndex t, Year year) static inline Year GetHouseConstructionYear(TileIndex t) { assert(IsTileType(t, MP_HOUSE)); - return IsHouseCompleted(t) ? _m[t].m5 + ORIGINAL_BASE_YEAR : 0; + return IsHouseCompleted(t) ? _m[t].m5 + GetHouseSpecs(GetHouseType(t))->min_year : 0; } /** |