From 0c842d795e247f7e57c09f9fadd95e9aaa8c09ed Mon Sep 17 00:00:00 2001 From: Aaron van Geffen Date: Thu, 17 Oct 2024 21:27:25 +0200 Subject: [PATCH] Fix .sea files not being listed in scenario index (#23013) --- distribution/changelog.txt | 1 + src/openrct2/scenario/ScenarioRepository.cpp | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/distribution/changelog.txt b/distribution/changelog.txt index 3b595d68bc..c0ffacf556 100644 --- a/distribution/changelog.txt +++ b/distribution/changelog.txt @@ -6,6 +6,7 @@ - Fix: [#22918] Zooming with keyboard moves the view off centre. - Fix: [#22921] Wooden RollerCoaster flat to steep railings appear in front of track in front of them. - Fix: [#22962] Fuzzy horizontal-to-vertical line transitions in charts. +- Fix: [#23009] Scenarios from RCT Classic (.sea files) are not included in the scenario index. 0.4.15 (2024-10-06) ------------------------------------------------------------------------ diff --git a/src/openrct2/scenario/ScenarioRepository.cpp b/src/openrct2/scenario/ScenarioRepository.cpp index e2b91456d4..4ec3ba2e25 100644 --- a/src/openrct2/scenario/ScenarioRepository.cpp +++ b/src/openrct2/scenario/ScenarioRepository.cpp @@ -209,15 +209,24 @@ private: std::string extension = Path::GetExtension(path); if (String::IEquals(extension, ".park")) + { importer = ParkImporter::CreateParkFile(objRepository); + importer->LoadScenario(path, true); + } else if (String::IEquals(extension, ".sc4")) + { importer = ParkImporter::CreateS4(); + importer->LoadScenario(path, true); + } else + { importer = ParkImporter::CreateS6(objRepository); + auto stream = GetStreamFromRCT2Scenario(path); + importer->LoadFromStream(stream.get(), true); + } if (importer) { - importer->LoadScenario(path, true); if (importer->GetDetails(entry)) { entry->Path = path;