mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r24994) -Codechange: Replace access to service_interval with accessors (peter1138)
This commit is contained in:
parent
328ed1cf94
commit
c77cd1f409
|
@ -302,7 +302,7 @@ CommandCost CmdBuildAircraft(TileIndex tile, DoCommandFlag flags, const Engine *
|
|||
v->targetairport = GetStationIndex(tile);
|
||||
v->SetNext(u);
|
||||
|
||||
v->service_interval = Company::Get(_current_company)->settings.vehicle.servint_aircraft;
|
||||
v->SetServiceInterval(Company::Get(_current_company)->settings.vehicle.servint_aircraft);
|
||||
|
||||
v->date_of_last_service = _date;
|
||||
v->build_year = u->build_year = _cur_year;
|
||||
|
|
|
@ -24,7 +24,7 @@ struct BaseConsist {
|
|||
int32 lateness_counter; ///< How many ticks late (or early if negative) this vehicle is.
|
||||
Date timetable_start; ///< When the vehicle is supposed to start the timetable.
|
||||
|
||||
Date service_interval; ///< The interval for (automatic) servicing; either in days or %.
|
||||
uint32 service_interval; ///< The interval for (automatic) servicing; either in days or %.
|
||||
|
||||
VehicleOrderID cur_real_order_index;///< The index to the current real (non-implicit) order
|
||||
VehicleOrderID cur_implicit_order_index;///< The index to the current implicit order
|
||||
|
|
|
@ -733,8 +733,8 @@ static uint32 VehicleGetVariable(Vehicle *v, const VehicleScopeResolver *object,
|
|||
}
|
||||
case 0x12: return Clamp(v->date_of_last_service - DAYS_TILL_ORIGINAL_BASE_YEAR, 0, 0xFFFF);
|
||||
case 0x13: return GB(Clamp(v->date_of_last_service - DAYS_TILL_ORIGINAL_BASE_YEAR, 0, 0xFFFF), 8, 8);
|
||||
case 0x14: return v->service_interval;
|
||||
case 0x15: return GB(v->service_interval, 8, 8);
|
||||
case 0x14: return v->GetServiceInterval();
|
||||
case 0x15: return GB(v->GetServiceInterval(), 8, 8);
|
||||
case 0x16: return v->last_station_visited;
|
||||
case 0x17: return v->tick_counter;
|
||||
case 0x18:
|
||||
|
|
|
@ -289,7 +289,7 @@ CommandCost CmdBuildRoadVehicle(TileIndex tile, DoCommandFlag flags, const Engin
|
|||
v->max_age = e->GetLifeLengthInDays();
|
||||
_new_vehicle_id = v->index;
|
||||
|
||||
v->service_interval = Company::Get(v->owner)->settings.vehicle.servint_roadveh;
|
||||
v->SetServiceInterval(Company::Get(v->owner)->settings.vehicle.servint_roadveh);
|
||||
|
||||
v->date_of_last_service = _date;
|
||||
v->build_year = _cur_year;
|
||||
|
|
|
@ -247,7 +247,7 @@ const SaveLoad *GetOrderBackupDescription()
|
|||
SLE_VAR(OrderBackup, user, SLE_UINT32),
|
||||
SLE_VAR(OrderBackup, tile, SLE_UINT32),
|
||||
SLE_VAR(OrderBackup, group, SLE_UINT16),
|
||||
SLE_VAR(OrderBackup, service_interval, SLE_INT32),
|
||||
SLE_VAR(OrderBackup, service_interval, SLE_UINT32),
|
||||
SLE_STR(OrderBackup, name, SLE_STR, 0),
|
||||
SLE_VAR(OrderBackup, clone, SLE_UINT16),
|
||||
SLE_VAR(OrderBackup, cur_real_order_index, SLE_UINT8),
|
||||
|
|
|
@ -640,8 +640,8 @@ const SaveLoad *GetVehicleDescription(VehicleType vt)
|
|||
SLE_CONDVAR(Vehicle, max_age, SLE_INT32, 31, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Vehicle, date_of_last_service, SLE_FILE_U16 | SLE_VAR_I32, 0, 30),
|
||||
SLE_CONDVAR(Vehicle, date_of_last_service, SLE_INT32, 31, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Vehicle, service_interval, SLE_FILE_U16 | SLE_VAR_I32, 0, 30),
|
||||
SLE_CONDVAR(Vehicle, service_interval, SLE_INT32, 31, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Vehicle, service_interval, SLE_FILE_U16 | SLE_VAR_U32, 0, 30),
|
||||
SLE_CONDVAR(Vehicle, service_interval, SLE_UINT32, 31, SL_MAX_VERSION),
|
||||
SLE_VAR(Vehicle, reliability, SLE_UINT16),
|
||||
SLE_VAR(Vehicle, reliability_spd_dec, SLE_UINT16),
|
||||
SLE_VAR(Vehicle, breakdown_ctr, SLE_UINT8),
|
||||
|
|
|
@ -692,7 +692,7 @@ CommandCost CmdBuildShip(TileIndex tile, DoCommandFlag flags, const Engine *e, u
|
|||
|
||||
v->state = TRACK_BIT_DEPOT;
|
||||
|
||||
v->service_interval = Company::Get(_current_company)->settings.vehicle.servint_ships;
|
||||
v->SetServiceInterval(Company::Get(_current_company)->settings.vehicle.servint_ships);
|
||||
v->date_of_last_service = _date;
|
||||
v->build_year = _cur_year;
|
||||
v->cur_image = SPR_IMG_QUERY;
|
||||
|
|
|
@ -736,7 +736,7 @@ CommandCost CmdBuildRailVehicle(TileIndex tile, DoCommandFlag flags, const Engin
|
|||
v->railtype = rvi->railtype;
|
||||
_new_vehicle_id = v->index;
|
||||
|
||||
v->service_interval = Company::Get(_current_company)->settings.vehicle.servint_trains;
|
||||
v->SetServiceInterval(Company::Get(_current_company)->settings.vehicle.servint_trains);
|
||||
v->date_of_last_service = _date;
|
||||
v->build_year = _cur_year;
|
||||
v->cur_image = SPR_IMG_QUERY;
|
||||
|
|
|
@ -112,8 +112,8 @@ bool Vehicle::NeedsServicing() const
|
|||
/* Are we ready for the next service cycle? */
|
||||
const Company *c = Company::Get(this->owner);
|
||||
if (c->settings.vehicle.servint_ispercent ?
|
||||
(this->reliability >= this->GetEngine()->reliability * (100 - this->service_interval) / 100) :
|
||||
(this->date_of_last_service + this->service_interval >= _date)) {
|
||||
(this->reliability >= this->GetEngine()->reliability * (100 - this->GetServiceInterval()) / 100) :
|
||||
(this->date_of_last_service + this->GetServiceInterval() >= _date)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
@ -645,6 +645,9 @@ public:
|
|||
void UpdateVisualEffect(bool allow_power_change = true);
|
||||
void ShowVisualEffect() const;
|
||||
|
||||
inline uint16 GetServiceInterval() const { return GB(this->service_interval, 0, 16); }
|
||||
inline void SetServiceInterval(uint16 interval) { SB(this->service_interval, 0, 16, interval); }
|
||||
|
||||
private:
|
||||
/**
|
||||
* Advance cur_real_order_index to the next real order.
|
||||
|
|
|
@ -1046,7 +1046,7 @@ CommandCost CmdChangeServiceInt(TileIndex tile, DoCommandFlag flags, uint32 p1,
|
|||
if (serv_int != p2) return CMD_ERROR;
|
||||
|
||||
if (flags & DC_EXEC) {
|
||||
v->service_interval = serv_int;
|
||||
v->SetServiceInterval(serv_int);
|
||||
SetWindowDirty(WC_VEHICLE_DETAILS, v->index);
|
||||
}
|
||||
|
||||
|
|
|
@ -1981,7 +1981,7 @@ struct VehicleDetailsWindow : Window {
|
|||
|
||||
case WID_VD_SERVICING_INTERVAL:
|
||||
/* Draw service interval text */
|
||||
SetDParam(0, v->service_interval);
|
||||
SetDParam(0, v->GetServiceInterval());
|
||||
SetDParam(1, v->date_of_last_service);
|
||||
DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, r.top + (r.bottom - r.top + 1 - FONT_HEIGHT_NORMAL) / 2,
|
||||
Company::Get(v->owner)->settings.vehicle.servint_ispercent ? STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT : STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS);
|
||||
|
@ -2027,8 +2027,8 @@ struct VehicleDetailsWindow : Window {
|
|||
const Vehicle *v = Vehicle::Get(this->window_number);
|
||||
|
||||
mod = (widget == WID_VD_DECREASE_SERVICING_INTERVAL) ? -mod : mod;
|
||||
mod = GetServiceIntervalClamped(mod + v->service_interval, v->owner);
|
||||
if (mod == v->service_interval) return;
|
||||
mod = GetServiceIntervalClamped(mod + v->GetServiceInterval(), v->owner);
|
||||
if (mod == v->GetServiceInterval()) return;
|
||||
|
||||
DoCommandP(v->tile, v->index, mod, CMD_CHANGE_SERVICE_INT | CMD_MSG(STR_ERROR_CAN_T_CHANGE_SERVICING));
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue