SCRATCH some version file member variables commented
This commit is contained in:
parent
f53cd55fbb
commit
80b81c2c1e
@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
#include "Json.h"
|
#include "Json.h"
|
||||||
using namespace Json;
|
using namespace Json;
|
||||||
|
#include "ParseUtils.h"
|
||||||
|
|
||||||
static const int CURRENT_MINIMUM_LAUNCHER_VERSION = 14;
|
static const int CURRENT_MINIMUM_LAUNCHER_VERSION = 14;
|
||||||
|
|
||||||
@ -31,30 +32,37 @@ VersionFilePtr MojangVersionFormat::versionFileFromJson(const QJsonDocument &doc
|
|||||||
|
|
||||||
QJsonObject root = doc.object();
|
QJsonObject root = doc.object();
|
||||||
|
|
||||||
out->name = root.value("name").toString();
|
out->name = "Minecraft";
|
||||||
out->fileId = root.value("fileId").toString();
|
out->fileId = "net.minecraft";
|
||||||
out->version = root.value("version").toString();
|
out->version = root.value("version").toString();
|
||||||
out->mcVersion = root.value("mcVersion").toString();
|
|
||||||
out->filename = filename;
|
out->filename = filename;
|
||||||
|
|
||||||
readString(root, "id", out->id);
|
readString(root, "id", out->id);
|
||||||
|
|
||||||
readString(root, "mainClass", out->mainClass);
|
readString(root, "mainClass", out->mainClass);
|
||||||
readString(root, "appletClass", out->appletClass);
|
|
||||||
readString(root, "minecraftArguments", out->overwriteMinecraftArguments);
|
readString(root, "minecraftArguments", out->overwriteMinecraftArguments);
|
||||||
readString(root, "type", out->type);
|
readString(root, "type", out->type);
|
||||||
|
|
||||||
readString(root, "assets", out->assets);
|
readString(root, "assets", out->assets);
|
||||||
|
|
||||||
|
if (!parse_timestamp(root.value("releaseTime").toString(""), out->m_releaseTimeString, out->m_releaseTime))
|
||||||
|
{
|
||||||
|
out->addProblem(PROBLEM_WARNING, QObject::tr("Invalid 'releaseTime' timestamp"));
|
||||||
|
}
|
||||||
|
if (!parse_timestamp(root.value("time").toString(""), out->m_updateTimeString, out->m_updateTime))
|
||||||
|
{
|
||||||
|
out->addProblem(PROBLEM_WARNING, QObject::tr("Invalid 'time' timestamp"));
|
||||||
|
}
|
||||||
|
|
||||||
if (root.contains("minimumLauncherVersion"))
|
if (root.contains("minimumLauncherVersion"))
|
||||||
{
|
{
|
||||||
auto minimumLauncherVersion = requireInteger(root.value("minimumLauncherVersion"));
|
out->minimumLauncherVersion = requireInteger(root.value("minimumLauncherVersion"));
|
||||||
if (minimumLauncherVersion > CURRENT_MINIMUM_LAUNCHER_VERSION)
|
if (out->minimumLauncherVersion > CURRENT_MINIMUM_LAUNCHER_VERSION)
|
||||||
{
|
{
|
||||||
out->addProblem(
|
out->addProblem(
|
||||||
PROBLEM_WARNING,
|
PROBLEM_WARNING,
|
||||||
QObject::tr("The 'minimumLauncherVersion' value of this version (%1) is higher than supported by MultiMC (%2). It might not work properly!")
|
QObject::tr("The 'minimumLauncherVersion' value of this version (%1) is higher than supported by MultiMC (%2). It might not work properly!")
|
||||||
.arg(minimumLauncherVersion)
|
.arg(out->minimumLauncherVersion)
|
||||||
.arg(CURRENT_MINIMUM_LAUNCHER_VERSION));
|
.arg(CURRENT_MINIMUM_LAUNCHER_VERSION));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -72,7 +80,7 @@ VersionFilePtr MojangVersionFormat::versionFileFromJson(const QJsonDocument &doc
|
|||||||
}
|
}
|
||||||
return out;
|
return out;
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
static QJsonDocument versionFileToJson(VersionFilePtr patch)
|
static QJsonDocument versionFileToJson(VersionFilePtr patch)
|
||||||
{
|
{
|
||||||
QJsonObject root;
|
QJsonObject root;
|
||||||
@ -128,4 +136,3 @@ QJsonDocument MojangVersionFormat::profilePatchToJson(const ProfilePatchPtr &pat
|
|||||||
}
|
}
|
||||||
throw VersionIncomplete(QObject::tr("Unhandled object type while processing %1").arg(patch->getPatchName()));
|
throw VersionIncomplete(QObject::tr("Unhandled object type while processing %1").arg(patch->getPatchName()));
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
@ -8,7 +8,5 @@ class MojangVersionFormat
|
|||||||
public:
|
public:
|
||||||
// version files / profile patches
|
// version files / profile patches
|
||||||
static VersionFilePtr versionFileFromJson(const QJsonDocument &doc, const QString &filename);
|
static VersionFilePtr versionFileFromJson(const QJsonDocument &doc, const QString &filename);
|
||||||
/*
|
|
||||||
static QJsonDocument profilePatchToJson(const ProfilePatchPtr &patch);
|
static QJsonDocument profilePatchToJson(const ProfilePatchPtr &patch);
|
||||||
*/
|
|
||||||
};
|
};
|
||||||
|
@ -102,49 +102,84 @@ public: /* methods */
|
|||||||
|
|
||||||
|
|
||||||
public: /* data */
|
public: /* data */
|
||||||
|
/// MultiMC: order hint for this version file if no explicit order is set
|
||||||
int order = 0;
|
int order = 0;
|
||||||
|
|
||||||
|
// Flags for UI and version file manipulation in general
|
||||||
bool m_isVanilla = false;
|
bool m_isVanilla = false;
|
||||||
bool m_isRemovable = false;
|
bool m_isRemovable = false;
|
||||||
bool m_isRevertible = false;
|
bool m_isRevertible = false;
|
||||||
bool m_isCustomizable = false;
|
bool m_isCustomizable = false;
|
||||||
bool m_isMovable = false;
|
bool m_isMovable = false;
|
||||||
QString name;
|
|
||||||
QString fileId;
|
/// MultiMC: filename of the file this was loaded from
|
||||||
QString version;
|
|
||||||
// TODO use the mcVersion to determine if a version file should be removed on update
|
|
||||||
QString mcVersion;
|
|
||||||
QString filename;
|
QString filename;
|
||||||
// TODO requirements
|
|
||||||
// QMap<QString, QString> requirements;
|
/// MultiMC: human readable name of this package
|
||||||
|
QString name;
|
||||||
|
|
||||||
|
/// MultiMC: package ID of this package
|
||||||
|
QString fileId;
|
||||||
|
|
||||||
|
/// MultiMC: version of this package
|
||||||
|
QString version;
|
||||||
|
|
||||||
|
/// MultiMC: dependency on a Minecraft version
|
||||||
|
QString mcVersion;
|
||||||
|
|
||||||
|
/// Mojang: used to version the Mojang version format
|
||||||
|
int minimumLauncherVersion = -1;
|
||||||
|
|
||||||
|
/// Mojang: version of Minecraft this is
|
||||||
QString id;
|
QString id;
|
||||||
|
|
||||||
|
/// Mojang: class to launch Minecraft with
|
||||||
QString mainClass;
|
QString mainClass;
|
||||||
|
|
||||||
|
/// MultiMC: class to launch legacy Minecraft with (ambed in a custom window)
|
||||||
QString appletClass;
|
QString appletClass;
|
||||||
|
|
||||||
|
/// Mojang: Minecraft launch arguments (may contain placeholders for variable substitution)
|
||||||
QString overwriteMinecraftArguments;
|
QString overwriteMinecraftArguments;
|
||||||
|
|
||||||
|
/// MultiMC: Minecraft launch arguments, additive variant
|
||||||
QString addMinecraftArguments;
|
QString addMinecraftArguments;
|
||||||
|
|
||||||
|
/// Mojang: DEPRECATED variant of the Minecraft arguments, hardcoded, do not use!
|
||||||
QString processArguments;
|
QString processArguments;
|
||||||
|
|
||||||
|
/// Mojang: type of the Minecraft version
|
||||||
QString type;
|
QString type;
|
||||||
|
|
||||||
/// the time this version was actually released by Mojang, as string and as QDateTime
|
/// Mojang: the time this version was actually released by Mojang, as string and as QDateTime
|
||||||
QString m_releaseTimeString;
|
QString m_releaseTimeString;
|
||||||
QDateTime m_releaseTime;
|
QDateTime m_releaseTime;
|
||||||
|
|
||||||
/// the time this version was last updated by Mojang, as string and as QDateTime
|
/// Mojang: the time this version was last updated by Mojang, as string and as QDateTime
|
||||||
QString m_updateTimeString;
|
QString m_updateTimeString;
|
||||||
QDateTime m_updateTime;
|
QDateTime m_updateTime;
|
||||||
|
|
||||||
/// asset group used by this ... thing.
|
/// Mojang: DEPRECATED asset group to be used with Minecraft
|
||||||
QString assets;
|
QString assets;
|
||||||
|
|
||||||
|
/// MultiMC: override list of tweaker mod arguments for launchwrapper (replaces the previously assembled lists)
|
||||||
bool shouldOverwriteTweakers = false;
|
bool shouldOverwriteTweakers = false;
|
||||||
QStringList overwriteTweakers;
|
QStringList overwriteTweakers;
|
||||||
|
|
||||||
|
/// MultiMC: list of tweaker mod arguments for launchwrapper
|
||||||
QStringList addTweakers;
|
QStringList addTweakers;
|
||||||
|
|
||||||
|
/// MultiMC: override list of libraries (replaces the previously assembled lists)
|
||||||
bool shouldOverwriteLibs = false;
|
bool shouldOverwriteLibs = false;
|
||||||
QList<RawLibraryPtr> overwriteLibs;
|
QList<RawLibraryPtr> overwriteLibs;
|
||||||
|
|
||||||
|
/// Mojang: list of libraries to add to the version
|
||||||
QList<RawLibraryPtr> addLibs;
|
QList<RawLibraryPtr> addLibs;
|
||||||
|
|
||||||
|
/// MultiMC: list of attached traits of this version file - used to enable features
|
||||||
QSet<QString> traits;
|
QSet<QString> traits;
|
||||||
|
|
||||||
|
/// MultiMC: list of jar mods added to this version
|
||||||
QList<JarmodPtr> jarMods;
|
QList<JarmodPtr> jarMods;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user