(svn r4320) -Fix/Codechange: rs->num_vehicles is no longer saved or loaded, but computed on the fly. Partly fixes FS#101
This commit is contained in:
		@@ -2749,7 +2749,7 @@ static const SaveLoad _roadstop_desc[] = {
 | 
				
			|||||||
	SLE_REF(RoadStop,prev,         REF_ROADSTOPS),
 | 
						SLE_REF(RoadStop,prev,         REF_ROADSTOPS),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	SLE_CONDNULL(4, 0, 24),
 | 
						SLE_CONDNULL(4, 0, 24),
 | 
				
			||||||
	SLE_CONDVAR(RoadStop, num_vehicles, SLE_UINT8, 25, SL_MAX_VERSION),
 | 
						SLE_CONDNULL(1, 25, 25),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	SLE_END()
 | 
						SLE_END()
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
@@ -2910,6 +2910,7 @@ static void Save_ROADSTOP(void)
 | 
				
			|||||||
static void Load_ROADSTOP(void)
 | 
					static void Load_ROADSTOP(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	int index;
 | 
						int index;
 | 
				
			||||||
 | 
						Vehicle *v;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	while ((index = SlIterateArray()) != -1) {
 | 
						while ((index = SlIterateArray()) != -1) {
 | 
				
			||||||
		RoadStop *rs;
 | 
							RoadStop *rs;
 | 
				
			||||||
@@ -2918,9 +2919,12 @@ static void Load_ROADSTOP(void)
 | 
				
			|||||||
			error("RoadStops: failed loading savegame: too many RoadStops");
 | 
								error("RoadStops: failed loading savegame: too many RoadStops");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		rs = GetRoadStop(index);
 | 
							rs = GetRoadStop(index);
 | 
				
			||||||
		rs->num_vehicles = 0;
 | 
					 | 
				
			||||||
		SlObject(rs, _roadstop_desc);
 | 
							SlObject(rs, _roadstop_desc);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						FOR_ALL_VEHICLES(v) {
 | 
				
			||||||
 | 
							if (v->type == VEH_Road && v->u.road.slot != NULL) GetRoadStopByTile(v->dest_tile, v->cargo_type == CT_PASSENGERS ? RS_BUS : RS_TRUCK)->num_vehicles++;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const ChunkHandler _station_chunk_handlers[] = {
 | 
					const ChunkHandler _station_chunk_handlers[] = {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user