diff options
author | peter1138 <peter1138@openttd.org> | 2006-01-06 22:49:00 +0000 |
---|---|---|
committer | peter1138 <peter1138@openttd.org> | 2006-01-06 22:49:00 +0000 |
commit | 5e68953907d4859cdefa6dd521a1996a86ae4c49 (patch) | |
tree | 8a328a4db89773cf80d3659123e36782e8abe45e | |
parent | 336a58e797a0664168ab7bd43a6a9fb56bc85ffd (diff) | |
download | openttd-5e68953907d4859cdefa6dd521a1996a86ae4c49.tar.xz |
(svn r3378) - NewGRF Fix: Use order status to determine whether a vehicle is loading instead
of speed, and get that state from first vehicle in a train consist.
-rw-r--r-- | engine.c | 7 | ||||
-rw-r--r-- | train_cmd.c | 2 |
2 files changed, 7 insertions, 2 deletions
@@ -608,7 +608,12 @@ int GetCustomEngineSprite(EngineID engine, const Vehicle *v, byte direction) if (capacity == 0) capacity = 1; loaded = (v->cargo_count * 100) / capacity; - in_motion = (v->cur_speed != 0); + + if (v->type == VEH_Train) { + in_motion = GetFirstVehicleInChain(v)->current_order.type != OT_LOADING; + } else { + in_motion = v->current_order.type != OT_LOADING; + } } group = GetVehicleSpriteGroup(engine, v); diff --git a/train_cmd.c b/train_cmd.c index 8e076e935..7ae6b10ff 100644 --- a/train_cmd.c +++ b/train_cmd.c @@ -2563,10 +2563,10 @@ static void TrainEnterStation(Vehicle *v, StationID station) SET_EXPENSES_TYPE(EXPENSES_TRAIN_INC); if (LoadUnloadVehicle(v) != 0) { InvalidateWindow(WC_TRAINS_LIST, v->owner); - MarkTrainDirty(v); TrainCargoChanged(v); UpdateTrainAcceleration(v); } + MarkTrainDirty(v); InvalidateWindowWidget(WC_VEHICLE_VIEW, v->index, STATUS_BAR); } |