diff options
Diffstat (limited to 'launcher/minecraft/launch')
-rw-r--r-- | launcher/minecraft/launch/ClaimAccount.cpp | 6 | ||||
-rw-r--r-- | launcher/minecraft/launch/LauncherPartLaunch.cpp | 15 | ||||
-rw-r--r-- | launcher/minecraft/launch/VerifyJavaInstall.cpp | 11 |
3 files changed, 23 insertions, 9 deletions
diff --git a/launcher/minecraft/launch/ClaimAccount.cpp b/launcher/minecraft/launch/ClaimAccount.cpp index a1180f0a..bb4f6806 100644 --- a/launcher/minecraft/launch/ClaimAccount.cpp +++ b/launcher/minecraft/launch/ClaimAccount.cpp @@ -1,11 +1,15 @@ #include "ClaimAccount.h" #include <launch/LaunchTask.h> +#include "Application.h" +#include "minecraft/auth/AccountList.h" + ClaimAccount::ClaimAccount(LaunchTask* parent, AuthSessionPtr session): LaunchStep(parent) { if(session->status == AuthSession::Status::PlayableOnline) { - m_account = session->m_accountPtr; + auto accounts = APPLICATION->accounts(); + m_account = accounts->getAccountByProfileName(session->player_name); } } diff --git a/launcher/minecraft/launch/LauncherPartLaunch.cpp b/launcher/minecraft/launch/LauncherPartLaunch.cpp index ff022c40..8fd11eca 100644 --- a/launcher/minecraft/launch/LauncherPartLaunch.cpp +++ b/launcher/minecraft/launch/LauncherPartLaunch.cpp @@ -14,13 +14,14 @@ */ #include "LauncherPartLaunch.h" -#include <QCoreApplication> -#include <launch/LaunchTask.h> -#include <minecraft/MinecraftInstance.h> -#include <FileSystem.h> -#include <Commandline.h> + #include <QStandardPaths> -#include "Env.h" + +#include "launch/LaunchTask.h" +#include "minecraft/MinecraftInstance.h" +#include "FileSystem.h" +#include "Commandline.h" +#include "Application.h" LauncherPartLaunch::LauncherPartLaunch(LaunchTask *parent) : LaunchStep(parent) { @@ -72,7 +73,7 @@ void LauncherPartLaunch::executeTask() m_process.setDetachable(true); auto classPath = minecraftInstance->getClassPath(); - classPath.prepend(FS::PathCombine(ENV.getJarsPath(), "NewLaunch.jar")); + classPath.prepend(FS::PathCombine(APPLICATION->getJarsPath(), "NewLaunch.jar")); auto natPath = minecraftInstance->getNativePath(); #ifdef Q_OS_WIN diff --git a/launcher/minecraft/launch/VerifyJavaInstall.cpp b/launcher/minecraft/launch/VerifyJavaInstall.cpp index 657669af..d9f7ecdc 100644 --- a/launcher/minecraft/launch/VerifyJavaInstall.cpp +++ b/launcher/minecraft/launch/VerifyJavaInstall.cpp @@ -11,8 +11,17 @@ void VerifyJavaInstall::executeTask() { auto javaVersion = m_inst->getJavaVersion(); auto minecraftComponent = m_inst->getPackProfile()->getComponent("net.minecraft"); + // Java 17 requirement + if (minecraftComponent->getReleaseDateTime() >= g_VersionFilterData.java17BeginsDate) { + if (javaVersion.major() < 17) { + emit logLine("Minecraft 1.18 Pre Release 2 and above require the use of Java 17", + MessageLevel::Fatal); + emitFailed(tr("Minecraft 1.18 Pre Release 2 and above require the use of Java 17")); + return; + } + } // Java 16 requirement - if (minecraftComponent->getReleaseDateTime() >= g_VersionFilterData.java16BeginsDate) { + else if (minecraftComponent->getReleaseDateTime() >= g_VersionFilterData.java16BeginsDate) { if (javaVersion.major() < 16) { emit logLine("Minecraft 21w19a and above require the use of Java 16", MessageLevel::Fatal); |