1
0
mirror of https://github.com/OpenTTD/OpenTTD.git synced 2025-08-22 05:59:10 +00:00

(svn r8110) -Codechange: direct Vehicle::current_order.type changes (to OT_LOADING and OT_LEAVESTATION) replaced by v->BeginLoading() and v->LeaveStation() calls. This should allow easy hooking of those state transitions in order to maintain vehicle loading queue.

This commit is contained in:
KUDr
2007-01-13 18:55:54 +00:00
parent 1f0206f62d
commit 9bfb3f08d9
6 changed files with 25 additions and 12 deletions

View File

@@ -2647,8 +2647,7 @@ static void HandleTrainLoading(Vehicle *v, bool mode)
{
Order b = v->current_order;
v->current_order.type = OT_LEAVESTATION;
v->current_order.flags = 0;
v->LeaveStation();
// If this was not the final order, don't remove it from the list.
if (!(b.flags & OF_NON_STOP)) return;
@@ -2721,12 +2720,12 @@ static void TrainEnterStation(Vehicle *v, StationID station)
v->current_order.dest == station) {
// Yeah, keep the load/unload flags
// Non Stop now means if the order should be increased.
v->current_order.type = OT_LOADING;
v->BeginLoading();
v->current_order.flags &= OF_FULL_LOAD | OF_UNLOAD | OF_TRANSFER;
v->current_order.flags |= OF_NON_STOP;
} else {
// No, just do a simple load
v->current_order.type = OT_LOADING;
v->BeginLoading();
v->current_order.flags = 0;
}
v->current_order.dest = 0;