diff --git a/src/openrct2/rct1/S4Importer.h b/src/openrct2/ParkImporter.h similarity index 82% rename from src/openrct2/rct1/S4Importer.h rename to src/openrct2/ParkImporter.h index 78a7d95037..5a3a495b46 100644 --- a/src/openrct2/rct1/S4Importer.h +++ b/src/openrct2/ParkImporter.h @@ -16,18 +16,18 @@ #pragma once -#include "../common.h" -#include "../scenario/ScenarioRepository.h" +#include "common.h" +#include "scenario/ScenarioRepository.h" interface IStream; /** - * Interface to import RollerCoaster Tycoon 1 scenarios (*.SC4) and saved games (*.SV4). + * Interface to import scenarios and saved games. */ -interface IS4Importer +interface IParkImporter { public: - virtual ~IS4Importer() = default; + virtual ~IParkImporter() = default; virtual void Load(const utf8 * path) abstract; virtual void LoadSavedGame(const utf8 * path) abstract; virtual void LoadScenario(const utf8 * path) abstract; @@ -36,4 +36,5 @@ public: virtual bool GetDetails(scenario_index_entry * dst) abstract; }; -IS4Importer * CreateS4Importer(); +IParkImporter * CreateS4Importer(); +IParkImporter * CreateS6Importer(); diff --git a/src/openrct2/cmdline/ConvertCommand.cpp b/src/openrct2/cmdline/ConvertCommand.cpp index 77d86057d5..8ea4ca937e 100644 --- a/src/openrct2/cmdline/ConvertCommand.cpp +++ b/src/openrct2/cmdline/ConvertCommand.cpp @@ -19,7 +19,7 @@ #include "../core/Exception.hpp" #include "../core/Guard.hpp" #include "../core/Path.hpp" -#include "../rct1/S4Importer.h" +#include "../ParkImporter.h" #include "CommandLine.hpp" extern "C" diff --git a/src/openrct2/libopenrct2.vcxproj b/src/openrct2/libopenrct2.vcxproj index 9cf193573e..d9c83a17b6 100644 --- a/src/openrct2/libopenrct2.vcxproj +++ b/src/openrct2/libopenrct2.vcxproj @@ -415,6 +415,7 @@ + @@ -543,7 +544,6 @@ - diff --git a/src/openrct2/rct1/S4Importer.cpp b/src/openrct2/rct1/S4Importer.cpp index 6e497d3e4f..11026d6860 100644 --- a/src/openrct2/rct1/S4Importer.cpp +++ b/src/openrct2/rct1/S4Importer.cpp @@ -27,8 +27,8 @@ #include "../core/String.hpp" #include "../core/Util.hpp" #include "../object/ObjectManager.h" +#include "../ParkImporter.h" #include "../scenario/ScenarioSources.h" -#include "S4Importer.h" #include "Tables.h" extern "C" @@ -91,7 +91,7 @@ public: } }; -class S4Importer final : public IS4Importer +class S4Importer final : public IParkImporter { private: const utf8 * _s4Path = nullptr; @@ -126,11 +126,11 @@ public: void Load(const utf8 * path) override { const utf8 * extension = Path::GetExtension(path); - if (String::Equals(extension, ".sc4")) + if (String::Equals(extension, ".sc4", true)) { LoadScenario(path); } - else if (String::Equals(extension, ".sv4")) + else if (String::Equals(extension, ".sv4", true)) { LoadSavedGame(path); } @@ -2479,7 +2479,7 @@ private: } }; -IS4Importer * CreateS4Importer() +IParkImporter * CreateS4Importer() { return new S4Importer(); } diff --git a/src/openrct2/scenario/ScenarioRepository.cpp b/src/openrct2/scenario/ScenarioRepository.cpp index 430ab503ac..66273a1b88 100644 --- a/src/openrct2/scenario/ScenarioRepository.cpp +++ b/src/openrct2/scenario/ScenarioRepository.cpp @@ -24,8 +24,8 @@ #include "../core/Path.hpp" #include "../core/String.hpp" #include "../core/Util.hpp" +#include "../ParkImporter.h" #include "../PlatformEnvironment.h" -#include "../rct1/S4Importer.h" #include "../rct12/SawyerEncoding.h" #include "ScenarioRepository.h" #include "ScenarioSources.h" @@ -316,7 +316,7 @@ private: { // RCT1 scenario bool result = false; - IS4Importer * s4Importer = CreateS4Importer(); + IParkImporter * s4Importer = CreateS4Importer(); try { s4Importer->LoadScenario(path.c_str()); diff --git a/src/openrct2/title/TitleSequencePlayer.cpp b/src/openrct2/title/TitleSequencePlayer.cpp index 49df5c4c75..915f6a8951 100644 --- a/src/openrct2/title/TitleSequencePlayer.cpp +++ b/src/openrct2/title/TitleSequencePlayer.cpp @@ -22,7 +22,7 @@ #include "../core/Math.hpp" #include "../core/Path.hpp" #include "../core/String.hpp" -#include "../rct1/S4Importer.h" +#include "../ParkImporter.h" #include "../scenario/ScenarioRepository.h" #include "../scenario/ScenarioSources.h" #include "TitleSequence.h" @@ -360,7 +360,7 @@ private: try { bool isScenario = String::Equals(extension, ".sc4", true); - IS4Importer * s4Importer = CreateS4Importer(); + IParkImporter * s4Importer = CreateS4Importer(); s4Importer->Load(path); s4Importer->Import(); PrepareParkForPlayback(isScenario);