fix bug with launcher version

This commit is contained in:
galeon committed 2026-10-11 22:32:58 +03:00
1 parent f10b654953
commit 443850196d
2 files changed
+14 -6

No files matched your search

+1 -1
View File
@@ -34,7 +34,7 @@ struct LaunchOptions
QString authlibInjectorApi = QStringLiteral("ely.by"); QString authlibInjectorApi = QStringLiteral("ely.by");
QString launcherName = QStringLiteral("BiLauncher"); QString launcherName = QStringLiteral("BiLauncher");
QString launcherVersion = QStringLiteral("1.0"); QString launcherVersion = QStringLiteral(LAUNCHER_VERSION);
}; };
class GameLauncher : public QObject class GameLauncher : public QObject
+13 -5
View File
@@ -18,6 +18,7 @@
#include "seasonalbuildservice.h" #include "seasonalbuildservice.h"
#include "seasonalpackdownloader.h" #include "seasonalpackdownloader.h"
#include <QCoreApplication>
#include <QDate> #include <QDate>
#include <QDateTime> #include <QDateTime>
#include <QDesktopServices> #include <QDesktopServices>
@@ -433,7 +434,10 @@ void LauncherBackend::addCustomBuild(const QString &name,
m_builds.append(build); m_builds.append(build);
saveCustomBuilds(); saveCustomBuilds();
emit customBuildsChanged(); emit customBuildsChanged();
maybeInstall(launchVersionIdOf(m_builds.last())); // Без версии игры ставить нечего: launchVersionIdOf() вернул бы имя сборки,
// и установщик пошёл бы искать в манифесте «Сборка 1».
if (!minecraftVersion.trimmed().isEmpty())
maybeInstall(minecraftVersion.trimmed());
} }
void LauncherBackend::updateProfile(int index, void LauncherBackend::updateProfile(int index,
@@ -1463,8 +1467,8 @@ void LauncherBackend::continueLaunch(const AuthResult &auth)
options.windowHeight = settingInt(m_settings, QStringLiteral("windowHeight"), 0); options.windowHeight = settingInt(m_settings, QStringLiteral("windowHeight"), 0);
options.fullscreen = m_settings.value(QStringLiteral("fullscreen")).toBool(); options.fullscreen = m_settings.value(QStringLiteral("fullscreen")).toBool();
options.serverAddress = build.serverUrl.trimmed(); options.serverAddress = build.serverUrl.trimmed();
options.launcherName = m_settings.value(QStringLiteral("launcherName")).toString(); options.launcherName = QCoreApplication::applicationName();
options.launcherVersion = m_settings.value(QStringLiteral("launcherVersion")).toString(); options.launcherVersion = QCoreApplication::applicationVersion();
const QString extra = m_settings.value(QStringLiteral("jvmArgs")).toString().trimmed(); const QString extra = m_settings.value(QStringLiteral("jvmArgs")).toString().trimmed();
if (!extra.isEmpty()) if (!extra.isEmpty())
@@ -2543,8 +2547,6 @@ void LauncherBackend::loadSettings()
{QStringLiteral("fullscreen"), false}, {QStringLiteral("fullscreen"), false},
// Язык интерфейса: "system" — по системной локали. // Язык интерфейса: "system" — по системной локали.
{QStringLiteral("language"), QStringLiteral("system")}, {QStringLiteral("language"), QStringLiteral("system")},
{QStringLiteral("launcherName"), QStringLiteral("BiLauncher")},
{QStringLiteral("launcherVersion"), QStringLiteral("1.0")},
{QStringLiteral("activeBuildId"), 0}, {QStringLiteral("activeBuildId"), 0},
// Сервер готовых сборок. В интерфейс не вынесен: менять его // Сервер готовых сборок. В интерфейс не вынесен: менять его
// приходится только при отладке против локального сервера. // приходится только при отладке против локального сервера.
@@ -2553,6 +2555,12 @@ void LauncherBackend::loadSettings()
const QJsonObject stored = readObjectFile(LauncherPaths::settingsFile()); const QJsonObject stored = readObjectFile(LauncherPaths::settingsFile());
for (auto it = stored.constBegin(); it != stored.constEnd(); ++it) for (auto it = stored.constBegin(); it != stored.constEnd(); ++it)
m_settings.insert(it.key(), it.value().toVariant()); m_settings.insert(it.key(), it.value().toVariant());
// Имя и версия лаунчера раньше хранились здесь со значением "1.0" и не
// обновлялись вместе с программой. Теперь они берутся из QCoreApplication,
// а старые ключи вычищаются из файла при следующем сохранении.
m_settings.remove(QStringLiteral("launcherName"));
m_settings.remove(QStringLiteral("launcherVersion"));
} }
void LauncherBackend::saveSettings() void LauncherBackend::saveSettings()