mirror of
https://github.com/UltimMC/Launcher.git
synced 2025-12-23 12:10:00 +00:00
Revert "NOISSUE nuke builtin Minecraft versions"
This reverts commit 5ae3b2c114.
We need those builtin versions for now.
This commit is contained in:
@@ -3,22 +3,20 @@
|
||||
#include "VersionBuildError.h"
|
||||
#include "ProfileUtils.h"
|
||||
#include "settings/SettingsObject.h"
|
||||
#include "minecraft/VersionFilterData.h"
|
||||
|
||||
bool MinecraftVersion::usesLegacyLauncher()
|
||||
{
|
||||
return getReleaseDateTime() < g_VersionFilterData.legacyCutoffDate;
|
||||
return m_traits.contains("legacyLaunch") || m_traits.contains("aplhaLaunch");
|
||||
}
|
||||
|
||||
|
||||
QString MinecraftVersion::descriptor()
|
||||
{
|
||||
return m_version;
|
||||
return m_descriptor;
|
||||
}
|
||||
|
||||
QString MinecraftVersion::name()
|
||||
{
|
||||
return m_version;
|
||||
return m_name;
|
||||
}
|
||||
|
||||
QString MinecraftVersion::typeString() const
|
||||
@@ -62,13 +60,13 @@ bool MinecraftVersion::isMinecraftVersion()
|
||||
|
||||
void MinecraftVersion::applyFileTo(MinecraftProfile *profile)
|
||||
{
|
||||
if(m_versionSource == Local && getVersionFile())
|
||||
if(m_versionSource == VersionSource::Local && getVersionFile())
|
||||
{
|
||||
getVersionFile()->applyTo(profile);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw VersionIncomplete(QObject::tr("Can't apply incomplete/builtin Minecraft version %1").arg(m_version));
|
||||
throw VersionIncomplete(QObject::tr("Can't apply incomplete/builtin Minecraft version %1").arg(m_name));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,7 +75,7 @@ QString MinecraftVersion::getUrl() const
|
||||
// legacy fallback
|
||||
if(m_versionFileURL.isEmpty())
|
||||
{
|
||||
return QString("http://") + URLConstants::AWS_DOWNLOAD_VERSIONS + m_version + "/" + m_version + ".json";
|
||||
return QString("http://") + URLConstants::AWS_DOWNLOAD_VERSIONS + m_descriptor + "/" + m_descriptor + ".json";
|
||||
}
|
||||
// current
|
||||
return m_versionFileURL;
|
||||
@@ -85,8 +83,9 @@ QString MinecraftVersion::getUrl() const
|
||||
|
||||
VersionFilePtr MinecraftVersion::getVersionFile()
|
||||
{
|
||||
QFileInfo versionFile(QString("versions/%1/%1.dat").arg(m_version));
|
||||
QFileInfo versionFile(QString("versions/%1/%1.dat").arg(m_descriptor));
|
||||
m_problems.clear();
|
||||
m_problemSeverity = PROBLEM_NONE;
|
||||
if(!versionFile.exists())
|
||||
{
|
||||
if(m_loadedVersionFile)
|
||||
@@ -121,10 +120,12 @@ bool MinecraftVersion::isCustomizable()
|
||||
{
|
||||
switch(m_versionSource)
|
||||
{
|
||||
case Local:
|
||||
case Remote:
|
||||
case VersionSource::Local:
|
||||
case VersionSource::Remote:
|
||||
// locally cached file, or a remote file that we can acquire can be customized
|
||||
return true;
|
||||
case VersionSource::Builtin:
|
||||
// builtins do not follow the normal OneSix format. They are not customizable.
|
||||
default:
|
||||
// Everything else is undefined and therefore not customizable.
|
||||
return false;
|
||||
@@ -134,7 +135,7 @@ bool MinecraftVersion::isCustomizable()
|
||||
|
||||
const QList<PatchProblem> &MinecraftVersion::getProblems()
|
||||
{
|
||||
if(getVersionFile())
|
||||
if(m_versionSource != VersionSource::Builtin && getVersionFile())
|
||||
{
|
||||
return getVersionFile()->getProblems();
|
||||
}
|
||||
@@ -143,7 +144,7 @@ const QList<PatchProblem> &MinecraftVersion::getProblems()
|
||||
|
||||
ProblemSeverity MinecraftVersion::getProblemSeverity()
|
||||
{
|
||||
if(getVersionFile())
|
||||
if(m_versionSource != VersionSource::Builtin && getVersionFile())
|
||||
{
|
||||
return getVersionFile()->getProblemSeverity();
|
||||
}
|
||||
@@ -153,12 +154,24 @@ ProblemSeverity MinecraftVersion::getProblemSeverity()
|
||||
void MinecraftVersion::applyTo(MinecraftProfile *profile)
|
||||
{
|
||||
// do we have this one cached?
|
||||
if (m_versionSource == Local)
|
||||
if (m_versionSource == VersionSource::Local)
|
||||
{
|
||||
applyFileTo(profile);
|
||||
return;
|
||||
}
|
||||
throw VersionIncomplete(QObject::tr("Minecraft version %1 could not be applied: version files are missing.").arg(m_version));
|
||||
// if not builtin, do not proceed any further.
|
||||
if (m_versionSource != VersionSource::Builtin)
|
||||
{
|
||||
throw VersionIncomplete(QObject::tr(
|
||||
"Minecraft version %1 could not be applied: version files are missing.").arg(m_descriptor));
|
||||
}
|
||||
profile->applyMinecraftVersion(m_descriptor);
|
||||
profile->applyMainClass(m_mainClass);
|
||||
profile->applyAppletClass(m_appletClass);
|
||||
profile->applyMinecraftArguments(" ${auth_player_name} ${auth_session}"); // all builtin versions are legacy
|
||||
profile->applyMinecraftVersionType(m_type);
|
||||
profile->applyTraits(m_traits);
|
||||
profile->applyProblemSeverity(m_problemSeverity);
|
||||
}
|
||||
|
||||
int MinecraftVersion::getOrder()
|
||||
@@ -182,7 +195,7 @@ QString MinecraftVersion::getName()
|
||||
}
|
||||
QString MinecraftVersion::getVersion()
|
||||
{
|
||||
return m_version;
|
||||
return m_descriptor;
|
||||
}
|
||||
QString MinecraftVersion::getID()
|
||||
{
|
||||
@@ -200,16 +213,18 @@ QDateTime MinecraftVersion::getReleaseDateTime()
|
||||
|
||||
bool MinecraftVersion::needsUpdate()
|
||||
{
|
||||
return m_versionSource == Remote || hasUpdate();
|
||||
return m_versionSource == VersionSource::Remote || hasUpdate();
|
||||
}
|
||||
|
||||
bool MinecraftVersion::hasUpdate()
|
||||
{
|
||||
return m_versionSource == Remote || (m_versionSource == Local && upstreamUpdate);
|
||||
return m_versionSource == VersionSource::Remote || (m_versionSource == VersionSource::Local && upstreamUpdate);
|
||||
}
|
||||
|
||||
bool MinecraftVersion::isCustom()
|
||||
{
|
||||
// if we add any other source types, this will evaluate to false for them.
|
||||
return m_versionSource != Local && m_versionSource != Remote;
|
||||
return m_versionSource != VersionSource::Builtin
|
||||
&& m_versionSource != VersionSource::Local
|
||||
&& m_versionSource != VersionSource::Remote;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user