From 569d631ffd3a85a42f5b664782d9b3ddc77c9fe1 Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Sat, 11 Apr 2026 04:36:59 +0200 Subject: [PATCH] Add functionality to apply scene entry changes --- src/app/App.tsx | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/app/App.tsx b/src/app/App.tsx index 9d78ddfd..f257c596 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -3885,6 +3885,29 @@ export function App({ store, initialStatusMessage }: AppProps) { } }; + const applySceneEntryChange = () => { + if (selectedSceneEntry === null) { + setStatusMessage("Select a Scene Entry before editing it."); + return; + } + + try { + const nextEntity = createSceneEntryEntity({ + id: selectedSceneEntry.id, + name: selectedSceneEntry.name, + position: snapVec3ToGrid( + readVec3Draft(entityPositionDraft, "Scene Entry position"), + DEFAULT_GRID_SIZE + ), + yawDegrees: readYawDegreesDraft(sceneEntryYawDraft) + }); + + commitEntityChange(selectedSceneEntry, nextEntity, "Updated Scene Entry."); + } catch (error) { + setStatusMessage(getErrorMessage(error)); + } + }; + const applyPointLightChange = (overrides: { colorHex?: string } = {}) => { if (selectedPointLight === null) { setStatusMessage("Select a Point Light before editing it."); @@ -3974,6 +3997,9 @@ export function App({ store, initialStatusMessage }: AppProps) { case "playerStart": applyPlayerStartChange(); break; + case "sceneEntry": + applySceneEntryChange(); + break; case "soundEmitter": applySoundEmitterChange(); break; @@ -3986,6 +4012,9 @@ export function App({ store, initialStatusMessage }: AppProps) { case "interactable": applyInteractableChange(); break; + case "sceneExit": + applySceneExitChange(); + break; } };