summaryrefslogtreecommitdiff
path: root/oldloader.c
diff options
context:
space:
mode:
authortruelight <truelight@openttd.org>2005-02-04 15:31:30 +0000
committertruelight <truelight@openttd.org>2005-02-04 15:31:30 +0000
commitd3aa3043e374c4d40ce45d6c654cb7bff88e7f7c (patch)
treecafae3f0441df07e0ca55f81e311d585b1fe5df2 /oldloader.c
parent98202ed1198f14d7833f941e1404886ab99995db (diff)
downloadopenttd-d3aa3043e374c4d40ce45d6c654cb7bff88e7f7c.tar.xz
(svn r1788) -Add: Made RoadStops dynamic. You can now create up to 64k roadstops.
Diffstat (limited to 'oldloader.c')
-rw-r--r--oldloader.c28
1 files changed, 22 insertions, 6 deletions
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;