1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2025-12-23 15:52:55 +01:00

Read and write version field of .park

This commit is contained in:
spacek531
2022-11-23 14:20:44 -08:00
committed by GitHub
parent 0ea5f343af
commit a617d393ed
5 changed files with 15 additions and 2 deletions

View File

@@ -250,6 +250,7 @@ class Object
{
private:
std::string _identifier;
std::string _version;
ObjectEntryDescriptor _descriptor{};
StringTable _stringTable;
ImageTable _imageTable;
@@ -363,6 +364,14 @@ public:
const std::vector<std::string>& GetAuthors() const;
void SetAuthors(std::vector<std::string>&& authors);
const std::string& GetVersion() const
{
return _version;
}
void SetVersion(const std::string& version)
{
_version = version;
}
const ImageTable& GetImageTable() const
{

View File

@@ -521,6 +521,7 @@ namespace ObjectFactory
if (id == OpenRCT2::Audio::AudioObjectIdentifiers::Rct2cBase)
id = OpenRCT2::Audio::AudioObjectIdentifiers::Rct2Base;
auto version = Json::GetString(jRoot["version"]);
ObjectEntryDescriptor descriptor;
auto originalId = Json::GetString(jRoot["originalId"]);
if (originalId.length() == 8 + 1 + 8 + 1 + 8)
@@ -539,8 +540,9 @@ namespace ObjectFactory
{
descriptor = ObjectEntryDescriptor(objectType, id);
}
descriptor.Version = version;
result = CreateObject(objectType);
result->SetVersion(version);
result->SetIdentifier(id);
result->SetDescriptor(descriptor);
result->MarkAsJsonObject();

View File

@@ -121,6 +121,7 @@ public:
item.Generation = object->GetGeneration();
item.Identifier = object->GetIdentifier();
item.ObjectEntry = object->GetObjectEntry();
item.Version = object->GetVersion();
item.Path = path;
item.Name = object->GetName();
item.Authors = object->GetAuthors();

View File

@@ -43,6 +43,7 @@ struct ObjectRepositoryItem
rct_object_entry ObjectEntry;
std::string Path;
std::string Name;
std::string Version;
std::vector<std::string> Authors;
std::vector<ObjectSourceGame> Sources;
std::shared_ptr<Object> LoadedObject{};

View File

@@ -388,7 +388,7 @@ namespace OpenRCT2
{
cs.Write(DESCRIPTOR_JSON);
cs.Write(entry.Identifier);
cs.Write(""); // reserved for version
cs.Write(entry.Version);
}
else
{