openttd.c
branch0.5
changeset 5527 cffb9a72506e
parent 5512 52869fa67090
child 5530 15f701e93291
equal deleted inserted replaced
5526:870820814801 5527:cffb9a72506e
  1590 		_patches.disable_elrails = false; // enable elrails
  1590 		_patches.disable_elrails = false; // enable elrails
  1591 		/* do the same as when elrails were enabled/disabled manually just now */
  1591 		/* do the same as when elrails were enabled/disabled manually just now */
  1592 		SettingsDisableElrail(_patches.disable_elrails);
  1592 		SettingsDisableElrail(_patches.disable_elrails);
  1593 	}
  1593 	}
  1594 
  1594 
       
  1595 	if (CheckSavegameVersion(41)) {
       
  1596 		Vehicle *v;
       
  1597 		FOR_ALL_VEHICLES(v) {
       
  1598 			if (IsBridgeTile(v->tile) && IsBridgeRamp(v->tile) &&
       
  1599 					(v->z_pos & (TILE_HEIGHT - 1)) == (TILE_HEIGHT - 1)) {
       
  1600 				/* Under some circumstances the trains going up a ramp can be one
       
  1601 				* pixel too low when they enter the bridge. This causes the train
       
  1602 				* to "disappear" under the bridge, which causes the train to
       
  1603 				* break into two pieces and crash slightly later.
       
  1604 				*
       
  1605 				* This "hack" will make the trains on those positions on the
       
  1606 				* ramps run one pixel higher. This offset will be automatically
       
  1607 				* "fixed" when it enters the bridge middle parts or when it
       
  1608 				* drives down the ramp of the bridge.
       
  1609 				*/
       
  1610 				v->z_pos++;
       
  1611 			}
       
  1612 		}
       
  1613 	}
       
  1614 
  1595 	/* Buoys do now store the owner of the previous water tile, which can never
  1615 	/* Buoys do now store the owner of the previous water tile, which can never
  1596 	 * be OWNER_NONE. So replace OWNER_NONE with OWNER_WATER. */
  1616 	 * be OWNER_NONE. So replace OWNER_NONE with OWNER_WATER. */
  1597 	if (CheckSavegameVersion(46)) {
  1617 	if (CheckSavegameVersion(46)) {
  1598 		Station *st;
  1618 		Station *st;
  1599 		FOR_ALL_STATIONS(st) {
  1619 		FOR_ALL_STATIONS(st) {