diff --git a/src/client/graphics/GameRenderer.ts b/src/client/graphics/GameRenderer.ts index c7c450eb7..dd0954980 100644 --- a/src/client/graphics/GameRenderer.ts +++ b/src/client/graphics/GameRenderer.ts @@ -236,7 +236,7 @@ export function createRenderer( const layers: Layer[] = [ new TerrainLayer(game, transformHandler), new TerritoryLayer(game, eventBus, transformHandler, userSettings), - new RailroadLayer(game), + new RailroadLayer(game, transformHandler), structureLayer, new UnitLayer(game, eventBus, transformHandler), new FxLayer(game), diff --git a/src/client/graphics/layers/RailroadLayer.ts b/src/client/graphics/layers/RailroadLayer.ts index 23806e156..147cca602 100644 --- a/src/client/graphics/layers/RailroadLayer.ts +++ b/src/client/graphics/layers/RailroadLayer.ts @@ -9,6 +9,7 @@ import { RailType, } from "../../../core/game/GameUpdates"; import { GameView } from "../../../core/game/GameView"; +import { TransformHandler } from "../TransformHandler"; import { Layer } from "./Layer"; import { getBridgeRects, getRailroadRects } from "./RailroadSprites"; @@ -27,7 +28,10 @@ export class RailroadLayer implements Layer { private nextRailIndexToCheck = 0; private railTileList: TileRef[] = []; - constructor(private game: GameView) { + constructor( + private game: GameView, + private transformHandler: TransformHandler, + ) { this.theme = game.config().theme(); } @@ -91,6 +95,11 @@ export class RailroadLayer implements Layer { renderLayer(context: CanvasRenderingContext2D) { this.updateRailColors(); + if (this.transformHandler.scale <= 2) { + // When zoomed out, don't show the railroads + // to prevent map clutter. + return; + } context.drawImage( this.canvas, -this.game.width() / 2,