src/road_map.h
changeset 6778 58189151ce4f
parent 6764 d09d8d618a07
child 7370 41adc721b1fa
equal deleted inserted replaced
6777:295e64682afd 6778:58189151ce4f
   121 		default: NOT_REACHED();
   121 		default: NOT_REACHED();
   122 		case ROAD_TILE_NORMAL:
   122 		case ROAD_TILE_NORMAL:
   123 			switch (rt) {
   123 			switch (rt) {
   124 				default: NOT_REACHED();
   124 				default: NOT_REACHED();
   125 				case ROADTYPE_ROAD: SB( _m[t].m1, 0, 5, o); break;
   125 				case ROADTYPE_ROAD: SB( _m[t].m1, 0, 5, o); break;
   126 				/* Trams don't need OWNER_TOWN, and remapping OWNER_NONE
       
   127 				 * to OWNER_TOWN makes it use one bit less */
       
   128 				case ROADTYPE_TRAM: SB( _m[t].m5, 0, 4, o == OWNER_NONE ? OWNER_TOWN : o); break;
   126 				case ROADTYPE_TRAM: SB( _m[t].m5, 0, 4, o == OWNER_NONE ? OWNER_TOWN : o); break;
   129 				case ROADTYPE_HWAY: SB(_me[t].m7, 0, 5, o); break;
   127 				case ROADTYPE_HWAY: SB(_me[t].m7, 0, 5, o); break;
   130 			}
   128 			}
   131 			break;
   129 			break;
   132 		case ROAD_TILE_CROSSING:
   130 		case ROAD_TILE_CROSSING:
   312 	SetTileType(t, MP_STREET);
   310 	SetTileType(t, MP_STREET);
   313 	SetTileOwner(t, road);
   311 	SetTileOwner(t, road);
   314 	_m[t].m2 = town;
   312 	_m[t].m2 = town;
   315 	_m[t].m3 = 0;
   313 	_m[t].m3 = 0;
   316 	_m[t].m4 = (HASBIT(rot, ROADTYPE_TRAM) ? bits : 0) << 4 | (HASBIT(rot, ROADTYPE_ROAD) ? bits : 0);
   314 	_m[t].m4 = (HASBIT(rot, ROADTYPE_TRAM) ? bits : 0) << 4 | (HASBIT(rot, ROADTYPE_ROAD) ? bits : 0);
   317 	_m[t].m5 = ROAD_TILE_NORMAL << 6 | tram;
   315 	_m[t].m5 = ROAD_TILE_NORMAL << 6;
       
   316 	SetRoadOwner(t, ROADTYPE_TRAM, tram);
   318 	SB(_m[t].m6, 2, 4, HASBIT(rot, ROADTYPE_HWAY) ? bits : 0);
   317 	SB(_m[t].m6, 2, 4, HASBIT(rot, ROADTYPE_HWAY) ? bits : 0);
   319 	_me[t].m7 = rot << 5 | hway;
   318 	_me[t].m7 = rot << 5 | hway;
   320 }
   319 }
   321 
   320 
   322 
   321 
   325 	SetTileType(t, MP_STREET);
   324 	SetTileType(t, MP_STREET);
   326 	SetTileOwner(t, rail);
   325 	SetTileOwner(t, rail);
   327 	_m[t].m2 = town;
   326 	_m[t].m2 = town;
   328 	_m[t].m3 = rat;
   327 	_m[t].m3 = rat;
   329 	_m[t].m4 = roaddir << 6 | road;
   328 	_m[t].m4 = roaddir << 6 | road;
   330 	_m[t].m5 = ROAD_TILE_CROSSING << 6 | tram;
   329 	_m[t].m5 = ROAD_TILE_CROSSING << 6;
       
   330 	SetRoadOwner(t, ROADTYPE_TRAM, tram);
   331 	SB(_m[t].m6, 2, 4, 0);
   331 	SB(_m[t].m6, 2, 4, 0);
   332 	_me[t].m7 = rot << 5 | hway;
   332 	_me[t].m7 = rot << 5 | hway;
   333 }
   333 }
   334 
   334 
   335 
   335