From 5fabb4f2546fa6b79a4e2c29679f506e587a0070 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Mon, 27 Mar 2017 03:34:39 +0200 Subject: NOISSUE Rough refactor of ProfilePatch and VersionFile internals. They are now distinct classes with distinct responsibilities. * ProfilePatch is an entry in MinecraftProfile and can hold VersionFile or Meta::Version. * VersionFile is the basic element that holds version information loaded from JSON. * Meta::Version is the loader class for VersionFile(s) from a server. --- api/logic/minecraft/onesix/OneSixInstance.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'api/logic/minecraft/onesix/OneSixInstance.cpp') diff --git a/api/logic/minecraft/onesix/OneSixInstance.cpp b/api/logic/minecraft/onesix/OneSixInstance.cpp index b471ff3e..6e4a5bdc 100644 --- a/api/logic/minecraft/onesix/OneSixInstance.cpp +++ b/api/logic/minecraft/onesix/OneSixInstance.cpp @@ -523,7 +523,7 @@ QString OneSixInstance::currentVersionId() const void OneSixInstance::reloadProfile() { m_profile->reload(); - setVersionBroken(m_profile->getProblemSeverity() == ProblemSeverity::PROBLEM_ERROR); + setVersionBroken(m_profile->getProblemSeverity() == ProblemSeverity::Error); emit versionReloaded(); } -- cgit v1.2.3 From 2ac0edbbdb27e12bae00c4779da135582bde89f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Thu, 30 Mar 2017 01:05:58 +0200 Subject: NOISSUE preview of LWJGL version changing It still needs work - some LWJGL versions are exclusive to macOS. This has to be encoded in the json. --- api/logic/minecraft/onesix/OneSixInstance.cpp | 44 ++++++++++++++++++++++----- 1 file changed, 37 insertions(+), 7 deletions(-) (limited to 'api/logic/minecraft/onesix/OneSixInstance.cpp') diff --git a/api/logic/minecraft/onesix/OneSixInstance.cpp b/api/logic/minecraft/onesix/OneSixInstance.cpp index 6e4a5bdc..d89f6f87 100644 --- a/api/logic/minecraft/onesix/OneSixInstance.cpp +++ b/api/logic/minecraft/onesix/OneSixInstance.cpp @@ -35,6 +35,7 @@ OneSixInstance::OneSixInstance(SettingsObjectPtr globalSettings, SettingsObjectP : MinecraftInstance(globalSettings, settings, rootDir) { m_settings->registerSetting({"IntendedVersion", "MinecraftVersion"}, ""); + m_settings->registerSetting("LWJGLVersion", ""); } void OneSixInstance::init() @@ -480,7 +481,24 @@ std::shared_ptr OneSixInstance::worldList() const bool OneSixInstance::setIntendedVersionId(QString version) { - settings()->set("IntendedVersion", version); + return setComponentVersion("net.minecraft", version); +} + +QString OneSixInstance::intendedVersionId() const +{ + return getComponentVersion("net.minecraft"); +} + +bool OneSixInstance::setComponentVersion(const QString& uid, const QString& version) +{ + if(uid == "net.minecraft") + { + settings()->set("IntendedVersion", version); + } + else if (uid == "org.lwjgl") + { + settings()->set("LWJGLVersion", version); + } if(getMinecraftProfile()) { clearProfile(); @@ -489,6 +507,24 @@ bool OneSixInstance::setIntendedVersionId(QString version) return true; } +QString OneSixInstance::getComponentVersion(const QString& uid) const +{ + if(uid == "net.minecraft") + { + return settings()->get("IntendedVersion").toString(); + } + else if(uid == "org.lwjgl") + { + auto version = settings()->get("LWJGLVersion").toString(); + if(version.isEmpty()) + { + return "2.9.1"; + } + return version; + } + return QString(); +} + QList< Mod > OneSixInstance::getJarMods() const { QList mods; @@ -500,12 +536,6 @@ QList< Mod > OneSixInstance::getJarMods() const return mods; } - -QString OneSixInstance::intendedVersionId() const -{ - return settings()->get("IntendedVersion").toString(); -} - void OneSixInstance::setShouldUpdate(bool) { } -- cgit v1.2.3 From e0596d3c86806d952a9811f306f497f84430ae3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Fri, 31 Mar 2017 23:47:56 +0200 Subject: NOISSUE Make forge installable again --- api/logic/minecraft/onesix/OneSixInstance.cpp | 32 +++++++++++++++++++++------ 1 file changed, 25 insertions(+), 7 deletions(-) (limited to 'api/logic/minecraft/onesix/OneSixInstance.cpp') diff --git a/api/logic/minecraft/onesix/OneSixInstance.cpp b/api/logic/minecraft/onesix/OneSixInstance.cpp index d89f6f87..4a4380a4 100644 --- a/api/logic/minecraft/onesix/OneSixInstance.cpp +++ b/api/logic/minecraft/onesix/OneSixInstance.cpp @@ -34,8 +34,15 @@ OneSixInstance::OneSixInstance(SettingsObjectPtr globalSettings, SettingsObjectPtr settings, const QString &rootDir) : MinecraftInstance(globalSettings, settings, rootDir) { + // set explicitly during instance creation m_settings->registerSetting({"IntendedVersion", "MinecraftVersion"}, ""); - m_settings->registerSetting("LWJGLVersion", ""); + + // defaults to the version we've been using for years (2.9.1) + m_settings->registerSetting("LWJGLVersion", "2.9.1"); + + // optionals + m_settings->registerSetting("ForgeVersion", ""); + m_settings->registerSetting("LiteloaderVersion", ""); } void OneSixInstance::init() @@ -499,6 +506,14 @@ bool OneSixInstance::setComponentVersion(const QString& uid, const QString& vers { settings()->set("LWJGLVersion", version); } + else if (uid == "net.minecraftforge") + { + settings()->set("ForgeVersion", version); + } + else if (uid == "com.liteloader") + { + settings()->set("LiteloaderVersion", version); + } if(getMinecraftProfile()) { clearProfile(); @@ -515,12 +530,15 @@ QString OneSixInstance::getComponentVersion(const QString& uid) const } else if(uid == "org.lwjgl") { - auto version = settings()->get("LWJGLVersion").toString(); - if(version.isEmpty()) - { - return "2.9.1"; - } - return version; + return settings()->get("LWJGLVersion").toString(); + } + else if(uid == "net.minecraftforge") + { + return settings()->get("ForgeVersion").toString(); + } + else if(uid == "com.liteloader") + { + return settings()->get("LiteloaderVersion").toString(); } return QString(); } -- cgit v1.2.3 From dff307557bf69cb2dc6cc264b485865469ef64fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Thu, 6 Apr 2017 23:32:20 +0200 Subject: NOISSUE fix liteloader uid where it is hardcoded hardcoded --- api/logic/minecraft/onesix/OneSixInstance.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'api/logic/minecraft/onesix/OneSixInstance.cpp') diff --git a/api/logic/minecraft/onesix/OneSixInstance.cpp b/api/logic/minecraft/onesix/OneSixInstance.cpp index 4a4380a4..2d50330f 100644 --- a/api/logic/minecraft/onesix/OneSixInstance.cpp +++ b/api/logic/minecraft/onesix/OneSixInstance.cpp @@ -510,7 +510,7 @@ bool OneSixInstance::setComponentVersion(const QString& uid, const QString& vers { settings()->set("ForgeVersion", version); } - else if (uid == "com.liteloader") + else if (uid == "com.mumfrey.liteloader") { settings()->set("LiteloaderVersion", version); } @@ -536,7 +536,7 @@ QString OneSixInstance::getComponentVersion(const QString& uid) const { return settings()->get("ForgeVersion").toString(); } - else if(uid == "com.liteloader") + else if(uid == "com.mumfrey.liteloader") { return settings()->get("LiteloaderVersion").toString(); } -- cgit v1.2.3 From 8e58d61150b0bdbe9eb91065d36342f3004fe97b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Thu, 6 Apr 2017 23:31:23 +0200 Subject: NOISSUE fix issue with the narrator feature by splitting java and native libraries --- api/logic/minecraft/onesix/OneSixInstance.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'api/logic/minecraft/onesix/OneSixInstance.cpp') diff --git a/api/logic/minecraft/onesix/OneSixInstance.cpp b/api/logic/minecraft/onesix/OneSixInstance.cpp index 2d50330f..fd54f544 100644 --- a/api/logic/minecraft/onesix/OneSixInstance.cpp +++ b/api/logic/minecraft/onesix/OneSixInstance.cpp @@ -283,6 +283,8 @@ QStringList OneSixInstance::verboseDescription(AuthSessionPtr session) printLibFile(file); } printLibFile(mainJarPath()); + out << ""; + out << "Native libraries:"; for(auto file: nativeJars) { printLibFile(file); -- cgit v1.2.3