src/station_cmd.cpp
changeset 9549 41ec95418e84
parent 9494 dc3c14edbc62
child 9652 0405e98d8e96
equal deleted inserted replaced
9548:eae9545bf02c 9549:41ec95418e84
  2219 		Axis axis = GetRoadStopDir(ti->tile) == DIAGDIR_NE ? AXIS_X : AXIS_Y;
  2219 		Axis axis = GetRoadStopDir(ti->tile) == DIAGDIR_NE ? AXIS_X : AXIS_Y;
  2220 		DrawGroundSprite((HasBit(roadtypes, ROADTYPE_ROAD) ? SPR_TRAMWAY_OVERLAY : SPR_TRAMWAY_TRAM) + (axis ^ 1), PAL_NONE);
  2220 		DrawGroundSprite((HasBit(roadtypes, ROADTYPE_ROAD) ? SPR_TRAMWAY_OVERLAY : SPR_TRAMWAY_TRAM) + (axis ^ 1), PAL_NONE);
  2221 		DrawTramCatenary(ti, axis == AXIS_X ? ROAD_X : ROAD_Y);
  2221 		DrawTramCatenary(ti, axis == AXIS_X ? ROAD_X : ROAD_Y);
  2222 	}
  2222 	}
  2223 
  2223 
  2224 	/* End now if buildings are invisible */
       
  2225 	if (IsInvisibilitySet(TO_BUILDINGS)) return;
       
  2226 
       
  2227 	const DrawTileSeqStruct *dtss;
  2224 	const DrawTileSeqStruct *dtss;
  2228 	foreach_draw_tile_seq(dtss, t->seq) {
  2225 	foreach_draw_tile_seq(dtss, t->seq) {
  2229 		SpriteID image = dtss->image.sprite;
  2226 		SpriteID image = dtss->image.sprite;
       
  2227 
       
  2228 		/* Stop drawing sprite sequence once we meet a sprite that doesn't have to be opaque */
       
  2229 		if (IsInvisibilitySet(TO_BUILDINGS) && !HasBit(image, SPRITE_MODIFIER_OPAQUE)) return;
       
  2230 
  2230 		if (relocation == 0 || HasBit(image, SPRITE_MODIFIER_USE_OFFSET)) {
  2231 		if (relocation == 0 || HasBit(image, SPRITE_MODIFIER_USE_OFFSET)) {
  2231 			image += total_offset;
  2232 			image += total_offset;
  2232 		} else {
  2233 		} else {
  2233 			image += relocation;
  2234 			image += relocation;
  2234 		}
  2235 		}