tunnelbridge_cmd.c
changeset 1067 3ba7987a004e
parent 1059 fe97d81a1b4f
child 1073 4e8f5f9d673d
equal deleted inserted replaced
1066:eaef1465d3ab 1067:3ba7987a004e
  1411 
  1411 
  1412 			dir = _map5[tile] & 3;
  1412 			dir = _map5[tile] & 3;
  1413 			vdir = v->direction >> 1;
  1413 			vdir = v->direction >> 1;
  1414 
  1414 
  1415 			if (v->u.rail.track != 0x40 && dir == vdir) {
  1415 			if (v->u.rail.track != 0x40 && dir == vdir) {
  1416 				if (v->subtype == 0 && fc == _tunnel_fractcoord_1[dir]) {
  1416 				if (v->subtype == TS_Front_Engine && fc == _tunnel_fractcoord_1[dir]) {
  1417 					if (v->spritenum < 4)
  1417 					if (v->spritenum < 4)
  1418 						SndPlayVehicleFx(SND_05_TRAIN_THROUGH_TUNNEL, v);
  1418 						SndPlayVehicleFx(SND_05_TRAIN_THROUGH_TUNNEL, v);
  1419 					return 0;
  1419 					return 0;
  1420 				}
  1420 				}
  1421 				if (fc == _tunnel_fractcoord_2[dir]) {
  1421 				if (fc == _tunnel_fractcoord_2[dir]) {
  1463 				v->vehstatus &= ~VS_HIDDEN;
  1463 				v->vehstatus &= ~VS_HIDDEN;
  1464 				return 4;
  1464 				return 4;
  1465 			}
  1465 			}
  1466 		}
  1466 		}
  1467 	} else if (_map5[tile] & 0x80) {
  1467 	} else if (_map5[tile] & 0x80) {
  1468 		if (v->type == VEH_Road || (v->type == VEH_Train && v->subtype == 0)) {
  1468 		if (v->type == VEH_Road || (v->type == VEH_Train && v->subtype == TS_Front_Engine)) {
  1469 			if (GetTileSlope(tile, &h) != 0)
  1469 			if (GetTileSlope(tile, &h) != 0)
  1470 				h += 8; // Compensate for possible foundation
  1470 				h += 8; // Compensate for possible foundation
  1471 			if (!(_map5[tile] & 0x40) || // start/end tile of bridge
  1471 			if (!(_map5[tile] & 0x40) || // start/end tile of bridge
  1472 					myabs(h - v->z_pos) > 2) { // high above the ground -> on the bridge
  1472 					myabs(h - v->z_pos) > 2) { // high above the ground -> on the bridge
  1473 				/* modify speed of vehicle */
  1473 				/* modify speed of vehicle */