(svn r1788) -Add: Made RoadStops dynamic. You can now create up to 64k roadstops.

This commit is contained in:
truelight
2005-02-04 15:31:30 +00:00
parent 4f5255c36e
commit 10adda0d73
5 changed files with 110 additions and 48 deletions

View File

@@ -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;