diff --git a/src/newgrf_engine.cpp b/src/newgrf_engine.cpp --- a/src/newgrf_engine.cpp +++ b/src/newgrf_engine.cpp @@ -557,7 +557,7 @@ static uint32_t VehicleGetVariable(Vehic } case 0x48: return v->GetEngine()->flags; // Vehicle Type Info - case 0x49: return static_cast(v->build_year); + case 0x49: return v->build_year.base(); case 0x4A: switch (v->type) { @@ -582,7 +582,7 @@ static uint32_t VehicleGetVariable(Vehic } case 0x4B: // Long date of last service - return static_cast(v->date_of_last_service_newgrf); + return v->date_of_last_service_newgrf.base(); case 0x4C: // Current maximum speed in NewGRF units if (!v->IsPrimaryVehicle()) return 0; @@ -814,7 +814,7 @@ static uint32_t VehicleGetVariable(Vehic case 0x41: return GB(ClampTo(v->age), 8, 8); case 0x42: return ClampTo(v->max_age); case 0x43: return GB(ClampTo(v->max_age), 8, 8); - case 0x44: return static_cast(Clamp(v->build_year, CalendarTime::ORIGINAL_BASE_YEAR, CalendarTime::ORIGINAL_MAX_YEAR) - CalendarTime::ORIGINAL_BASE_YEAR); + case 0x44: return (Clamp(v->build_year, CalendarTime::ORIGINAL_BASE_YEAR, CalendarTime::ORIGINAL_MAX_YEAR) - CalendarTime::ORIGINAL_BASE_YEAR).base(); case 0x45: return v->unitnumber; case 0x46: return v->GetEngine()->grf_prop.local_id; case 0x47: return GB(v->GetEngine()->grf_prop.local_id, 8, 8); @@ -957,11 +957,11 @@ static uint32_t VehicleGetVariable(Vehic } } case 0x48: return Engine::Get(this->self_type)->flags; // Vehicle Type Info - case 0x49: return static_cast(TimerGameCalendar::year); // 'Long' format build year - case 0x4B: return static_cast(TimerGameCalendar::date); // Long date of last service + case 0x49: return TimerGameCalendar::year.base(); // 'Long' format build year + case 0x4B: return TimerGameCalendar::date.base(); // Long date of last service case 0x92: return ClampTo(TimerGameCalendar::date - CalendarTime::DAYS_TILL_ORIGINAL_BASE_YEAR); // Date of last service case 0x93: return GB(ClampTo(TimerGameCalendar::date - CalendarTime::DAYS_TILL_ORIGINAL_BASE_YEAR), 8, 8); - case 0xC4: return static_cast(Clamp(TimerGameCalendar::year, CalendarTime::ORIGINAL_BASE_YEAR, CalendarTime::ORIGINAL_MAX_YEAR) - CalendarTime::ORIGINAL_BASE_YEAR); // Build year + case 0xC4: return (Clamp(TimerGameCalendar::year, CalendarTime::ORIGINAL_BASE_YEAR, CalendarTime::ORIGINAL_MAX_YEAR) - CalendarTime::ORIGINAL_BASE_YEAR).base(); // Build year case 0xC6: return Engine::Get(this->self_type)->grf_prop.local_id; case 0xC7: return GB(Engine::Get(this->self_type)->grf_prop.local_id, 8, 8); case 0xDA: return INVALID_VEHICLE; // Next vehicle