From 44f06c8bf02b99c1c158bfdb24c411c554529f05 Mon Sep 17 00:00:00 2001 From: peter1138 Date: Thu, 3 Nov 2005 09:22:24 +0000 Subject: (svn r3124) Alter train loading/unloading time to use the actual length of the train instead of the number of wagons. The actual length is cached in the first vehicle of the train. --- train_cmd.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'train_cmd.c') diff --git a/train_cmd.c b/train_cmd.c index a93093a30..d6d9b08b2 100644 --- a/train_cmd.c +++ b/train_cmd.c @@ -83,6 +83,7 @@ void TrainConsistChanged(Vehicle *v) { rvi_v = RailVehInfo(v->engine_type); first_engine = (v->subtype == TS_Front_Engine) ? v->engine_type : INVALID_VEHICLE; + v->u.rail.cached_total_length = 0; for (u = v; u != NULL; u = u->next) { const RailVehicleInfo *rvi_u = RailVehInfo(u->engine_type); @@ -125,6 +126,7 @@ void TrainConsistChanged(Vehicle *v) { veh_len = rvi_u->shorten_factor; veh_len = clamp(veh_len, 0, u->next == NULL ? 7 : 5); // the clamp on vehicles not the last in chain is stricter, as too short wagons can break the 'follow next vehicle' code u->u.rail.cached_veh_length = 8 - veh_len; + v->u.rail.cached_total_length += u->u.rail.cached_veh_length; }; -- cgit v1.2.3-54-g00ecf