From 9622bc87fc8c7b3f24d7fbcbcdf0e57553225465 Mon Sep 17 00:00:00 2001
From: izawartka <59137928+izawartka@users.noreply.github.com>
Date: Wed, 14 Jan 2026 23:50:01 +0100
Subject: [PATCH] Add scenery info version 30 support
+Added support for scenery info version 30 (sceneries with info version 29 are still supported)
+Added UUID field in SceneryInfoView
---
src/components/scenery-info-dialog/SceneryInfoView.js | 1 +
src/helpers/constants.js | 3 ++-
src/model/parsing/scenery-parser.js | 4 ++--
src/model/special-objects/scenery-info.js | 9 ++++++---
4 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/src/components/scenery-info-dialog/SceneryInfoView.js b/src/components/scenery-info-dialog/SceneryInfoView.js
index 078be15..106d638 100644
--- a/src/components/scenery-info-dialog/SceneryInfoView.js
+++ b/src/components/scenery-info-dialog/SceneryInfoView.js
@@ -15,6 +15,7 @@ export default function SceneryInfoView({ scenery }) {
+
diff --git a/src/helpers/constants.js b/src/helpers/constants.js
index 7f13c56..93621f9 100644
--- a/src/helpers/constants.js
+++ b/src/helpers/constants.js
@@ -14,7 +14,8 @@ const Constants = {
},
parser: {
logSceneryAfterFinished: true,
- sceneryInfoVersion: 29,
+ sceneryInfoVersionMin: 29,
+ sceneryInfoVersionMax: 30,
alwaysShowLogDialog: false,
runTracksConnectionTest: false,
tracksConnectionTestIgnoreY: true,
diff --git a/src/model/parsing/scenery-parser.js b/src/model/parsing/scenery-parser.js
index 5d0dbd3..5ade62a 100644
--- a/src/model/parsing/scenery-parser.js
+++ b/src/model/parsing/scenery-parser.js
@@ -83,8 +83,8 @@ export default class SceneryParser {
}
const version = parseInt(infoHeader.split("v")[1]);
- if(version !== Constants.parser.sceneryInfoVersion) {
- SceneryParserLog.warn('invalidSceneryInfoVersion', `Invalid scenery info version: ${version}. Expected: ${Constants.parser.sceneryInfoVersion}`);
+ if(version < Constants.parser.sceneryInfoVersionMin || version > Constants.parser.sceneryInfoVersionMax) {
+ SceneryParserLog.warn('invalidSceneryInfoVersion', `Invalid scenery info version: ${version}. Expected: ${Constants.parser.sceneryInfoVersionMin}-${Constants.parser.sceneryInfoVersionMax}`);
}
return SceneryInfo.fromText(text);
diff --git a/src/model/special-objects/scenery-info.js b/src/model/special-objects/scenery-info.js
index ccf4100..874a71d 100644
--- a/src/model/special-objects/scenery-info.js
+++ b/src/model/special-objects/scenery-info.js
@@ -7,9 +7,10 @@ export default class SceneryInfo extends SpecialObject {
link;
author;
main_signalbox;
+ uuid;
type = "SceneryInfo";
- constructor(name, version, description, link, author, main_signalbox) {
+ constructor(name, version, description, link, author, main_signalbox, uuid) {
super();
Object.assign(this, {
name,
@@ -17,7 +18,8 @@ export default class SceneryInfo extends SpecialObject {
description,
link,
author,
- main_signalbox
+ main_signalbox,
+ uuid
});
}
@@ -29,7 +31,8 @@ export default class SceneryInfo extends SpecialObject {
values[3], // description
values[4], // link
values[5], // author
- values[6] // main_signalbox
+ values[6], // main_signalbox
+ values[7] // uuid
);
return sceneryInfo;