tunnelbridge_cmd.c
changeset 3367 a995838e8d85
parent 3362 d30d8f9a37f0
child 3379 50b253bb9819
equal deleted inserted replaced
3366:49ff3eb617f8 3367:a995838e8d85
  1250 	if (IsTunnel(tile)) {
  1250 	if (IsTunnel(tile)) {
  1251 		if (GetTunnelTransportType(tile) == mode) {
  1251 		if (GetTunnelTransportType(tile) == mode) {
  1252 			return DiagDirToAxis(GetTunnelDirection(tile)) == AXIS_X ? 0x101 : 0x202;
  1252 			return DiagDirToAxis(GetTunnelDirection(tile)) == AXIS_X ? 0x101 : 0x202;
  1253 		}
  1253 		}
  1254 	} else if (IsBridge(tile)) { // XXX is this necessary?
  1254 	} else if (IsBridge(tile)) { // XXX is this necessary?
  1255 		/* This is a bridge */
  1255 		if (IsBridgeRamp(tile)) {
  1256 		result = 0;
  1256 			if (GetBridgeTransportType(tile) != mode) return 0;
  1257 		if (GetBridgeTransportType(tile) == mode) {
  1257 			return (DiagDirToAxis(GetBridgeRampDirection(tile)) == AXIS_X ? TRACK_BIT_X : TRACK_BIT_Y) * 0x101;
  1258 			/* Transport over the bridge is compatible */
  1258 		} else {
  1259 			result = (GetBridgeAxis(tile) == AXIS_X ? 0x101 : 0x202);
  1259 			result = 0;
  1260 		}
  1260 			if (GetBridgeTransportType(tile) == mode) {
  1261 		if (IsBridgeMiddle(tile)) {
  1261 				result = (GetBridgeAxis(tile) == AXIS_X ? TRACK_BIT_X : TRACK_BIT_Y) * 0x101;
  1262 			/* Bridge middle part */
  1262 			}
  1263 			if (IsTransportUnderBridge(tile)) {
  1263 			if (IsTransportUnderBridge(tile)) {
  1264 				if (GetTransportTypeUnderBridge(tile) != mode) return result;
  1264 				if (GetTransportTypeUnderBridge(tile) != mode) return result;
  1265 			} else {
  1265 			} else {
  1266 				if (IsClearUnderBridge(tile)) {
  1266 				if (IsClearUnderBridge(tile)) {
  1267 					return result;
  1267 					return result;