diff --git a/src/newgrf_engine.cpp b/src/newgrf_engine.cpp index 164c3a2a30..556507a618 100644 --- a/src/newgrf_engine.cpp +++ b/src/newgrf_engine.cpp @@ -1311,11 +1311,6 @@ static void DoTriggerVehicle(Vehicle *v, VehicleTrigger trigger, uint16_t base_r void TriggerVehicle(Vehicle *v, VehicleTrigger trigger) { - if (trigger == VEHICLE_TRIGGER_DEPOT) { - /* store that the vehicle entered a depot this tick */ - VehicleEnteredDepotThisTick(v); - } - v->InvalidateNewGRFCacheOfChain(); DoTriggerVehicle(v, trigger, 0, true); v->InvalidateNewGRFCacheOfChain(); diff --git a/src/vehicle.cpp b/src/vehicle.cpp index 888d8def04..7765028d64 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -925,7 +925,7 @@ Vehicle::~Vehicle() * Adds a vehicle to the list of vehicles that visited a depot this tick * @param *v vehicle to add */ -void VehicleEnteredDepotThisTick(Vehicle *v) +static void VehicleEnteredDepotThisTick(Vehicle *v) { /* Vehicle should stop in the depot if it was in 'stopping' state */ _vehicles_to_autoreplace[v->index] = !v->vehstatus.Test(VehState::Stopped); @@ -1610,6 +1610,9 @@ void VehicleEnterDepot(Vehicle *v) VehicleServiceInDepot(v); + /* Store that the vehicle entered a depot this tick */ + VehicleEnteredDepotThisTick(v); + /* After a vehicle trigger, the graphics and properties of the vehicle could change. */ TriggerVehicle(v, VEHICLE_TRIGGER_DEPOT); v->MarkDirty(); diff --git a/src/vehicle_func.h b/src/vehicle_func.h index 33701feae2..25f68679b5 100644 --- a/src/vehicle_func.h +++ b/src/vehicle_func.h @@ -74,7 +74,6 @@ void CheckVehicleBreakdown(Vehicle *v); void EconomyAgeVehicle(Vehicle *v); void AgeVehicle(Vehicle *v); void RunVehicleCalendarDayProc(); -void VehicleEnteredDepotThisTick(Vehicle *v); UnitID GetFreeUnitNumber(VehicleType type);