mirror of
https://github.com/UltimMC/Launcher.git
synced 2025-10-04 09:08:42 +00:00
Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
c31dbf13cb | ||
|
c081cd8021 |
@@ -104,7 +104,7 @@ set(MultiMC_NEWS_RSS_URL "http://multimc.org/rss.xml" CACHE STRING "URL to fetch
|
|||||||
######## Set version numbers ########
|
######## Set version numbers ########
|
||||||
set(MultiMC_VERSION_MAJOR 0)
|
set(MultiMC_VERSION_MAJOR 0)
|
||||||
set(MultiMC_VERSION_MINOR 3)
|
set(MultiMC_VERSION_MINOR 3)
|
||||||
set(MultiMC_VERSION_HOTFIX 6)
|
set(MultiMC_VERSION_HOTFIX 7)
|
||||||
|
|
||||||
# Build number
|
# Build number
|
||||||
set(MultiMC_VERSION_BUILD -1 CACHE STRING "Build number. -1 for no build number.")
|
set(MultiMC_VERSION_BUILD -1 CACHE STRING "Build number. -1 for no build number.")
|
||||||
|
@@ -82,3 +82,5 @@
|
|||||||
- Fix for translations on OSX not working
|
- Fix for translations on OSX not working
|
||||||
- Screenshot dialog should be harder to lose track of when used from the console window
|
- Screenshot dialog should be harder to lose track of when used from the console window
|
||||||
- A crash handler implementation has been added.
|
- A crash handler implementation has been added.
|
||||||
|
0.3.7
|
||||||
|
- Fixed forge for 1.7.10-pre4 (and any future prereleases)
|
||||||
|
@@ -71,7 +71,7 @@ QVariant ForgeVersionList::data(const QModelIndex &index, int role) const
|
|||||||
return version->name();
|
return version->name();
|
||||||
|
|
||||||
case 1:
|
case 1:
|
||||||
return version->mcver;
|
return version->mcver_sane;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
return version->typeString();
|
return version->typeString();
|
||||||
@@ -281,7 +281,7 @@ bool ForgeListLoadTask::parseForgeList(QList<BaseVersionPtr> &out)
|
|||||||
fVersion->changelog_url = changelog_url;
|
fVersion->changelog_url = changelog_url;
|
||||||
fVersion->installer_url = installer_url;
|
fVersion->installer_url = installer_url;
|
||||||
fVersion->jobbuildver = jobbuildver;
|
fVersion->jobbuildver = jobbuildver;
|
||||||
fVersion->mcver = mcver;
|
fVersion->mcver = fVersion->mcver_sane = mcver;
|
||||||
if (installer_filename.isEmpty())
|
if (installer_filename.isEmpty())
|
||||||
{
|
{
|
||||||
fVersion->filename = filename;
|
fVersion->filename = filename;
|
||||||
@@ -341,9 +341,16 @@ bool ForgeListLoadTask::parseForgeGradleList(QList<BaseVersionPtr> &out)
|
|||||||
std::shared_ptr<ForgeVersion> fVersion(new ForgeVersion());
|
std::shared_ptr<ForgeVersion> fVersion(new ForgeVersion());
|
||||||
fVersion->m_buildnr = number.value("build").toDouble();
|
fVersion->m_buildnr = number.value("build").toDouble();
|
||||||
fVersion->jobbuildver = number.value("version").toString();
|
fVersion->jobbuildver = number.value("version").toString();
|
||||||
|
fVersion->branch = number.value("branch").toString("");
|
||||||
fVersion->mcver = number.value("mcversion").toString();
|
fVersion->mcver = number.value("mcversion").toString();
|
||||||
|
// HACK: here, we fix the minecraft version used by forge.
|
||||||
|
// HACK: this will inevitably break (later)
|
||||||
|
// FIXME: replace with a dictionary
|
||||||
|
fVersion->mcver_sane = fVersion->mcver;
|
||||||
|
fVersion->mcver_sane.replace("_pre", "-pre");
|
||||||
fVersion->filename = "";
|
fVersion->filename = "";
|
||||||
QString filename, installer_filename;
|
|
||||||
|
QString universal_filename, installer_filename;
|
||||||
QJsonArray files = number.value("files").toArray();
|
QJsonArray files = number.value("files").toArray();
|
||||||
for (auto fIt = files.begin(); fIt != files.end(); ++fIt)
|
for (auto fIt = files.begin(); fIt != files.end(); ++fIt)
|
||||||
{
|
{
|
||||||
@@ -353,37 +360,46 @@ bool ForgeListLoadTask::parseForgeGradleList(QList<BaseVersionPtr> &out)
|
|||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (file.at(1).toString() == "installer")
|
|
||||||
|
QString extension = file.at(0).toString();
|
||||||
|
QString part = file.at(1).toString();
|
||||||
|
QString checksum = file.at(2).toString();
|
||||||
|
|
||||||
|
// insane form of mcver is used here
|
||||||
|
QString longVersion = fVersion->mcver + "-" + fVersion->jobbuildver;
|
||||||
|
if (!fVersion->branch.isEmpty())
|
||||||
{
|
{
|
||||||
fVersion->installer_url = QString("%1/%2-%3/%4-%2-%3-installer.%5").arg(
|
longVersion = longVersion + "-" + fVersion->branch;
|
||||||
webpath, fVersion->mcver, fVersion->jobbuildver, artifact,
|
|
||||||
file.at(0).toString());
|
|
||||||
installer_filename = QString("%1-%2-%3-installer.%4").arg(
|
|
||||||
artifact, fVersion->mcver, fVersion->jobbuildver, file.at(0).toString());
|
|
||||||
}
|
}
|
||||||
else if (file.at(1).toString() == "universal")
|
QString filename = artifact + "-" + longVersion + "-" + part + "." + extension;
|
||||||
|
|
||||||
|
QString url = QString("%1/%2/%3")
|
||||||
|
.arg(webpath)
|
||||||
|
.arg(longVersion)
|
||||||
|
.arg(filename);
|
||||||
|
|
||||||
|
if (part == "installer")
|
||||||
{
|
{
|
||||||
fVersion->universal_url = QString("%1/%2-%3/%4-%2-%3-universal.%5").arg(
|
fVersion->installer_url = url;
|
||||||
webpath, fVersion->mcver, fVersion->jobbuildver, artifact,
|
installer_filename = filename;
|
||||||
file.at(0).toString());
|
|
||||||
filename = QString("%1-%2-%3-universal.%4").arg(
|
|
||||||
artifact, fVersion->mcver, fVersion->jobbuildver, file.at(0).toString());
|
|
||||||
}
|
}
|
||||||
else if (file.at(1).toString() == "changelog")
|
else if (part == "universal")
|
||||||
{
|
{
|
||||||
fVersion->changelog_url = QString("%1/%2-%3/%4-%2-%3-changelog.%5").arg(
|
fVersion->universal_url = url;
|
||||||
webpath, fVersion->mcver, fVersion->jobbuildver, artifact,
|
universal_filename = filename;
|
||||||
file.at(0).toString());
|
}
|
||||||
|
else if (part == "changelog")
|
||||||
|
{
|
||||||
|
fVersion->changelog_url = url;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (fVersion->installer_url.isEmpty() && fVersion->universal_url.isEmpty())
|
if (fVersion->installer_url.isEmpty() && fVersion->universal_url.isEmpty())
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
fVersion->filename = fVersion->installer_url.isEmpty() ? filename : installer_filename;
|
fVersion->filename = fVersion->installer_url.isEmpty() ? universal_filename : installer_filename;
|
||||||
out.append(fVersion);
|
out.append(fVersion);
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -68,6 +68,8 @@ struct ForgeVersion : public BaseVersion
|
|||||||
QString jobbuildver;
|
QString jobbuildver;
|
||||||
QString mcver;
|
QString mcver;
|
||||||
QString filename;
|
QString filename;
|
||||||
|
QString branch;
|
||||||
|
QString mcver_sane;
|
||||||
};
|
};
|
||||||
|
|
||||||
class ForgeVersionList : public BaseVersionList
|
class ForgeVersionList : public BaseVersionList
|
||||||
|
Reference in New Issue
Block a user