rail_cmd.c
changeset 2544 2c6a25db1bd0
parent 2537 5e4ca74e995a
child 2548 49c8a096033f
equal deleted inserted replaced
2543:8468aca3d896 2544:2c6a25db1bd0
  1995 static void TileLoop_Track(TileIndex tile)
  1995 static void TileLoop_Track(TileIndex tile)
  1996 {
  1996 {
  1997 	byte a2;
  1997 	byte a2;
  1998 	byte rail;
  1998 	byte rail;
  1999 	uint16 m2;
  1999 	uint16 m2;
  2000 	byte owner;
       
  2001 
  2000 
  2002 	m2 = GB(_m[tile].m2, 0, 4);
  2001 	m2 = GB(_m[tile].m2, 0, 4);
  2003 
  2002 
  2004 	/* special code for alps landscape */
  2003 	/* special code for alps landscape */
  2005 	if (_opt.landscape == LT_HILLY) {
  2004 	if (_opt.landscape == LT_HILLY) {
  2035 		} else if (rail == TRACK_BIT_LEFT) {
  2034 		} else if (rail == TRACK_BIT_LEFT) {
  2036 			a2 = RAIL_GROUND_FENCE_VERT1;
  2035 			a2 = RAIL_GROUND_FENCE_VERT1;
  2037 		} else if (rail == TRACK_BIT_RIGHT) {
  2036 		} else if (rail == TRACK_BIT_RIGHT) {
  2038 			a2 = RAIL_GROUND_FENCE_VERT2;
  2037 			a2 = RAIL_GROUND_FENCE_VERT2;
  2039 		} else {
  2038 		} else {
  2040 			owner = GetTileOwner(tile);
  2039 			PlayerID owner = GetTileOwner(tile);
  2041 
  2040 
  2042 			if ( (!(rail&(TRACK_BIT_DIAG2|TRACK_BIT_UPPER|TRACK_BIT_LEFT)) && (rail&TRACK_BIT_DIAG1)) || rail==(TRACK_BIT_LOWER|TRACK_BIT_RIGHT)) {
  2041 			if ( (!(rail&(TRACK_BIT_DIAG2|TRACK_BIT_UPPER|TRACK_BIT_LEFT)) && (rail&TRACK_BIT_DIAG1)) || rail==(TRACK_BIT_LOWER|TRACK_BIT_RIGHT)) {
  2043 				if (!IsTileType(tile + TileDiffXY(0, -1), MP_RAILWAY) ||
  2042 				if (!IsTileType(tile + TileDiffXY(0, -1), MP_RAILWAY) ||
  2044 						!IsTileOwner(tile + TileDiffXY(0, -1), owner) ||
  2043 						!IsTileOwner(tile + TileDiffXY(0, -1), owner) ||
  2045 						(_m[tile + TileDiffXY(0, -1)].m5 == TRACK_BIT_UPPER || _m[tile + TileDiffXY(0, -1)].m5 == TRACK_BIT_LEFT))
  2044 						(_m[tile + TileDiffXY(0, -1)].m5 == TRACK_BIT_UPPER || _m[tile + TileDiffXY(0, -1)].m5 == TRACK_BIT_LEFT))