elrail.c
changeset 3462 5e65c0a6bb92
parent 3461 958012fc3d77
child 3463 34ad61f7f928
equal deleted inserted replaced
3461:958012fc3d77 3462:5e65c0a6bb92
    89 				if (GetRailType(t) != RAILTYPE_ELECTRIC) return 0;
    89 				if (GetRailType(t) != RAILTYPE_ELECTRIC) return 0;
    90 				if (override != NULL) *override = 1 << GetTunnelDirection(t);
    90 				if (override != NULL) *override = 1 << GetTunnelDirection(t);
    91 				return DiagDirToAxis(GetTunnelDirection(t)) == AXIS_X ? TRACK_BIT_X : TRACK_BIT_Y;
    91 				return DiagDirToAxis(GetTunnelDirection(t)) == AXIS_X ? TRACK_BIT_X : TRACK_BIT_Y;
    92 			} else {
    92 			} else {
    93 				if (GetRailType(t) != RAILTYPE_ELECTRIC) return 0;
    93 				if (GetRailType(t) != RAILTYPE_ELECTRIC) return 0;
    94 				if (
    94 				if (IsBridgeMiddle(t)) {
    95 					IsBridgeMiddle(t) &&
    95 					if (IsTransportUnderBridge(t) &&
    96 					IsTransportUnderBridge(t) &&
    96 						GetTransportTypeUnderBridge(t) == TRANSPORT_RAIL) {
    97 					GetTransportTypeUnderBridge(t) == TRANSPORT_RAIL) {
    97 						return GetRailBitsUnderBridge(t);
    98 					return GetRailBitsUnderBridge(t);
    98 					} else
       
    99 						return 0;
    99 				} else {
   100 				} else {
   100 					if (override != NULL && DistanceMax(t, GetOtherBridgeEnd(t)) > 1) *override = 1 << GetBridgeRampDirection(t);
   101 					if (override != NULL && DistanceMax(t, GetOtherBridgeEnd(t)) > 1) *override = 1 << GetBridgeRampDirection(t);
   101 
   102 
   102 					return DiagDirToAxis(GetBridgeRampDirection(t)) == AXIS_X ? TRACK_BIT_X : TRACK_BIT_Y;
   103 					return DiagDirToAxis(GetBridgeRampDirection(t)) == AXIS_X ? TRACK_BIT_X : TRACK_BIT_Y;
   103 				}
   104 				}