summaryrefslogtreecommitdiffstats
path: root/logic/OneSixInstance.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'logic/OneSixInstance.cpp')
-rw-r--r--logic/OneSixInstance.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/logic/OneSixInstance.cpp b/logic/OneSixInstance.cpp
index 5a83bafc..a947b7c0 100644
--- a/logic/OneSixInstance.cpp
+++ b/logic/OneSixInstance.cpp
@@ -18,6 +18,7 @@
#include "OneSixUpdate.h"
#include "MinecraftProcess.h"
#include "OneSixVersion.h"
+#include "JavaChecker.h"
#include <setting.h>
#include <pathutils.h>
@@ -36,7 +37,7 @@ OneSixInstance::OneSixInstance(const QString &rootDir, SettingsObject *setting_o
reloadFullVersion();
}
-BaseUpdate *OneSixInstance::doUpdate()
+Task *OneSixInstance::doUpdate()
{
return new OneSixUpdate(this);
}
@@ -74,7 +75,7 @@ QStringList OneSixInstance::processMinecraftArgs(MojangAccountPtr account)
QMap<QString, QString> token_mapping;
// yggdrasil!
token_mapping["auth_username"] = account->username();
- //token_mapping["auth_session"] = response.session_id;
+ token_mapping["auth_session"] = account->sessionId();
token_mapping["auth_access_token"] = account->accessToken();
token_mapping["auth_player_name"] = account->currentProfile()->name();
token_mapping["auth_uuid"] = account->currentProfile()->id();
@@ -93,6 +94,8 @@ QStringList OneSixInstance::processMinecraftArgs(MojangAccountPtr account)
token_mapping["game_directory"] = absRootDir;
QString absAssetsDir = QDir("assets/").absolutePath();
token_mapping["game_assets"] = absAssetsDir;
+ //TODO: this is something new and not even fully implemented in the vanilla launcher.
+ token_mapping["user_properties"] = "{ }";
QStringList parts = args_pattern.split(' ', QString::SkipEmptyParts);
for (int i = 0; i < parts.length(); i++)
@@ -120,6 +123,11 @@ MinecraftProcess *OneSixInstance::prepareForLaunch(MojangAccountPtr account)
for (auto lib : libs_to_extract)
{
+ QString storage = lib->storagePath();
+ if(storage.contains("${arch}"))
+ {
+ storage.replace("${arch}", "64");
+ }
QString path = "libraries/" + lib->storagePath();
QLOG_INFO() << "Will extract " << path.toLocal8Bit();
if (JlCompress::extractWithExceptions(path, natives_dir_raw, lib->extract_excludes)
@@ -186,8 +194,8 @@ MinecraftProcess *OneSixInstance::prepareForLaunch(MojangAccountPtr account)
// create the process and set its parameters
MinecraftProcess *proc = new MinecraftProcess(this);
- proc->setMinecraftArguments(args);
- proc->setMinecraftWorkdir(minecraftRoot());
+ proc->setArguments(args);
+ proc->setWorkdir(minecraftRoot());
return proc;
}