1
0
Fork 0

(svn r3939) -Fix: No longer assume that the number of slots is 2. It was not a problem up to now, but it's not The Right Thing (TM) to do either

release/0.5
celestar 2006-03-18 08:00:27 +00:00
parent 2bbcd41247
commit e54f1e1e2b
3 changed files with 8 additions and 4 deletions

View File

@ -109,7 +109,8 @@ DEF_CONSOLE_CMD(ConResetSlots)
}
FOR_ALL_ROADSTOPS(rs) {
rs->slot[0] = rs->slot[1] = INVALID_VEHICLE;
int i;
for (i = 0; i < NUM_SLOTS; i++) rs->slot[i] = INVALID_VEHICLE;
}
return true;

View File

@ -356,6 +356,7 @@ static void FixOldTowns(void)
static void FixOldStations(void)
{
Station *st;
int i;
FOR_ALL_STATIONS(st) {
/* Check if we need to swap width and height for the station */
@ -372,7 +373,7 @@ static void FixOldStations(void)
st->bus_stops->station = st->index;
st->bus_stops->next = NULL;
st->bus_stops->prev = NULL;
st->bus_stops->slot[0] = st->bus_stops->slot[1] = INVALID_VEHICLE;
for (i = 0; i < NUM_SLOTS; i++) st->bus_stops->slot[i] = INVALID_VEHICLE;
}
if (st->lorry_tile_obsolete != 0) {
@ -383,7 +384,7 @@ static void FixOldStations(void)
st->truck_stops->station = st->index;
st->truck_stops->next = NULL;
st->truck_stops->prev = NULL;
st->truck_stops->slot[0] = st->truck_stops->slot[1] = INVALID_VEHICLE;
for (i = 0; i < NUM_SLOTS; i++) st->truck_stops->slot[i] = INVALID_VEHICLE;
}
}
}

View File

@ -86,13 +86,15 @@ static void MarkStationDirty(const Station* st)
static void InitializeRoadStop(RoadStop *road_stop, RoadStop *previous, TileIndex tile, StationID index)
{
int i;
road_stop->xy = tile;
road_stop->used = true;
road_stop->status = 3; //stop is free
road_stop->slot[0] = road_stop->slot[1] = INVALID_VEHICLE;
road_stop->next = NULL;
road_stop->prev = previous;
road_stop->station = index;
for (i = 0; i < NUM_SLOTS; i++) road_stop->slot[i] = INVALID_VEHICLE;
}
RoadStop* GetPrimaryRoadStop(const Station* st, RoadStopType type)