From f52800c81db291d0376e0e75291f49d162be8d95 Mon Sep 17 00:00:00 2001 From: dominik-korsa <29484605+dominik-korsa@users.noreply.github.com> Date: Wed, 23 Jul 2025 01:50:48 +0200 Subject: [PATCH] Fix isolation IDs rendering for all switch tracks --- src/components/map/ObjectsRenderQueue.js | 3 ++- src/components/map/SceneryLayer.js | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/components/map/ObjectsRenderQueue.js b/src/components/map/ObjectsRenderQueue.js index 2c43b76..985cd30 100644 --- a/src/components/map/ObjectsRenderQueue.js +++ b/src/components/map/ObjectsRenderQueue.js @@ -13,6 +13,7 @@ import SpawnPointRenderer from './object-renderers/SpawnPointRenderer'; import IsolationEndRenderer from './object-renderers/IsolationEndRenderer'; import PlatformRenderer from './object-renderers/PlatformRenderer'; import Constants from '../../helpers/constants'; +import {TrackSource} from "../../model/tracks/track"; const ObjectRendererQueue = [ { @@ -41,7 +42,7 @@ const ObjectRendererQueue = [ { 'name': 'isolations-ids', 'category': ['tracks', 'switches'], - 'types': ['StandardTrack', 'BezierTrack', 'Switch'], + 'trackSources': [TrackSource.STANDARD, TrackSource.BEZIER], 'renderer': IsolationIdRenderer, 'cond': (layers) => layers['isolations-ids'] }, diff --git a/src/components/map/SceneryLayer.js b/src/components/map/SceneryLayer.js index ee26395..ba0d046 100644 --- a/src/components/map/SceneryLayer.js +++ b/src/components/map/SceneryLayer.js @@ -5,7 +5,7 @@ import Constants from "../../helpers/constants"; export default function SceneryLayer(props) { const { queueItem } = props; - const { name, category, type, types, cond, renderer: Renderer, additionalComponents: AdditionalComponents } = queueItem; + const { name, category, type, types, trackSources, cond, renderer: Renderer, additionalComponents: AdditionalComponents } = queueItem; const { scenery } = useContext(MainContext); const { layers } = useContext(SettingsContext); @@ -35,6 +35,7 @@ export default function SceneryLayer(props) { objects={objects} type={type} types={types} + trackSources={trackSources} pointerEvents={pointerEvents} AdditionalComponents={AdditionalComponents} /> @@ -44,7 +45,7 @@ export default function SceneryLayer(props) { const MemoizedSceneryLayer = memo(StatelessSceneryLayer); -function StatelessSceneryLayer({ name, Renderer, objects, type, types, pointerEvents = false, AdditionalComponents = [] }) { +function StatelessSceneryLayer({ name, Renderer, objects, type, types, trackSources, pointerEvents = false, AdditionalComponents = [] }) { return ( { if (type !== undefined && type !== obj.type) return null; if (types !== undefined && !types.includes(obj.type)) return null; + if (trackSources !== undefined && obj.category === 'tracks' && !trackSources.includes(obj.source)) return null; return ; })} { AdditionalComponents.map((Component, index) => (