From d3aa3043e374c4d40ce45d6c654cb7bff88e7f7c Mon Sep 17 00:00:00 2001 From: truelight Date: Fri, 4 Feb 2005 15:31:30 +0000 Subject: (svn r1788) -Add: Made RoadStops dynamic. You can now create up to 64k roadstops. --- oldloader.c | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) (limited to 'oldloader.c') diff --git a/oldloader.c b/oldloader.c index 8647a0eeb..24db721cc 100644 --- a/oldloader.c +++ b/oldloader.c @@ -720,16 +720,32 @@ static void FixStation(OldStation *o, int num) s->xy = o->xy; s->town = REMAP_TOWN_PTR(o->town); + + s->bus_stops = NULL; + s->truck_stops = NULL; + if (o->bus_tile != 0) { - s->bus_stops = GetFirstFreeRoadStop(); + s->bus_stops = AllocateRoadStop(); s->bus_stops->xy = o->bus_tile; - } else - s->bus_stops = NULL; + s->bus_stops->used = true; + s->bus_stops->status = 3; + s->bus_stops->station = s->index; + s->bus_stops->next = NULL; + s->bus_stops->prev = NULL; + s->bus_stops->slot[0] = s->bus_stops->slot[1] = INVALID_SLOT; + } + if (o->lorry_tile != 0) { - s->truck_stops = GetFirstFreeRoadStop(); + s->truck_stops = AllocateRoadStop(); s->truck_stops->xy = o->lorry_tile; - } else - s->truck_stops = 0; + s->truck_stops->used = true; + s->truck_stops->status = 3; + s->truck_stops->station = s->index; + s->truck_stops->next = NULL; + s->truck_stops->prev = NULL; + s->truck_stops->slot[0] = s->truck_stops->slot[1] = INVALID_SLOT; + } + s->train_tile = o->train_tile; s->airport_tile = o->airport_tile; s->dock_tile = o->dock_tile; -- cgit v1.2.3-54-g00ecf