diff src/road_map.h @ 8344:6312fafcfe47 draft

(svn r11910) -Fix: play 'ding-ding' crossing sound in more cases (except gameload and crossing construction) -Fix: crossing sound is bound to tile, not to vehicle
author smatz <smatz@openttd.org>
date Thu, 17 Jan 2008 20:41:33 +0000
parents 87c85bb42d6f
children 6a75c42267d1
line wrap: on
line diff
--- a/src/road_map.h
+++ b/src/road_map.h
@@ -191,23 +191,26 @@
 	return AxisToTrackBits(OtherAxis(GetCrossingRoadAxis(tile)));
 }
 
+static inline bool IsCrossingBarred(TileIndex t)
+{
+	assert(GetRoadTileType(t) == ROAD_TILE_CROSSING);
+	return HasBit(_m[t].m4, 5);
+}
+
+static inline void SetCrossingBarred(TileIndex t, bool barred)
+{
+	assert(GetRoadTileType(t) == ROAD_TILE_CROSSING);
+	SB(_m[t].m4, 5, 1, barred);
+}
 
 static inline void UnbarCrossing(TileIndex t)
 {
-	assert(GetRoadTileType(t) == ROAD_TILE_CROSSING);
-	ClrBit(_m[t].m4, 5);
+	SetCrossingBarred(t, false);
 }
 
 static inline void BarCrossing(TileIndex t)
 {
-	assert(GetRoadTileType(t) == ROAD_TILE_CROSSING);
-	SetBit(_m[t].m4, 5);
-}
-
-static inline bool IsCrossingBarred(TileIndex t)
-{
-	assert(GetRoadTileType(t) == ROAD_TILE_CROSSING);
-	return HasBit(_m[t].m4, 5);
+	SetCrossingBarred(t, true);
 }
 
 #define IsOnDesert IsOnSnow