aboutsummaryrefslogtreecommitdiff
path: root/launcher/minecraft/mod
diff options
context:
space:
mode:
authorTrial97 <alexandru.tripon97@gmail.com>2023-06-19 00:36:37 +0300
committerTrial97 <alexandru.tripon97@gmail.com>2023-06-19 00:36:37 +0300
commit1bdde1f947f57801f2fcb1a0f881f19bd8e1e29d (patch)
tree96a30c44f6b71ca7f93cfc6b7cb4bad6dcaa1a55 /launcher/minecraft/mod
parent319ce8c19f801a4bec920c6778cf140e9f92ee32 (diff)
downloadPrismLauncher-1bdde1f947f57801f2fcb1a0f881f19bd8e1e29d.tar.gz
PrismLauncher-1bdde1f947f57801f2fcb1a0f881f19bd8e1e29d.tar.bz2
PrismLauncher-1bdde1f947f57801f2fcb1a0f881f19bd8e1e29d.zip
Small fixes
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
Diffstat (limited to 'launcher/minecraft/mod')
-rw-r--r--launcher/minecraft/mod/tasks/GetModDependenciesTask.cpp61
-rw-r--r--launcher/minecraft/mod/tasks/GetModDependenciesTask.h2
2 files changed, 34 insertions, 29 deletions
diff --git a/launcher/minecraft/mod/tasks/GetModDependenciesTask.cpp b/launcher/minecraft/mod/tasks/GetModDependenciesTask.cpp
index bd80a661..54116e28 100644
--- a/launcher/minecraft/mod/tasks/GetModDependenciesTask.cpp
+++ b/launcher/minecraft/mod/tasks/GetModDependenciesTask.cpp
@@ -33,7 +33,7 @@
#include "ui/pages/modplatform/flame/FlameResourceModels.h"
#include "ui/pages/modplatform/modrinth/ModrinthResourceModels.h"
-static Version mcVersions(BaseInstance* inst)
+static Version mcVersion(BaseInstance* inst)
{
return static_cast<MinecraftInstance*>(inst)->getPackProfile()->getComponent("net.minecraft")->getVersion();
}
@@ -53,7 +53,7 @@ GetModDependenciesTask::GetModDependenciesTask(QObject* parent,
std::make_shared<FlameAPI>() }
, m_modrinth_provider{ ModPlatform::ResourceProvider::MODRINTH, std::make_shared<ResourceDownload::ModrinthModModel>(*instance),
std::make_shared<ModrinthAPI>() }
- , m_version(mcVersions(instance))
+ , m_version(mcVersion(instance))
, m_loaderType(mcLoaders(instance))
{
for (auto mod : folder->allMods())
@@ -74,33 +74,38 @@ void GetModDependenciesTask::prepare()
QList<ModPlatform::Dependency> GetModDependenciesTask::getDependenciesForVersion(const ModPlatform::IndexedVersion& version,
const ModPlatform::ResourceProvider providerName)
{
- auto c_dependencies = QList<ModPlatform::Dependency>();
+ QList<ModPlatform::Dependency> c_dependencies;
for (auto ver_dep : version.dependencies) {
- if (ver_dep.type == ModPlatform::DependencyType::REQUIRED) {
- if (auto dep = std::find_if(c_dependencies.begin(), c_dependencies.end(),
- [&ver_dep](const ModPlatform::Dependency& i) { return i.addonId == ver_dep.addonId; });
- dep == c_dependencies.end()) { // check the current dependency list
- if (auto dep = std::find_if(m_selected.begin(), m_selected.end(),
- [&ver_dep, providerName](std::shared_ptr<PackDependency> i) {
- return i->pack->addonId == ver_dep.addonId && i->pack->provider == providerName;
- });
- dep == m_selected.end()) { // check the selected versions
- if (auto dep = std::find_if(m_mods.begin(), m_mods.end(),
- [&ver_dep, providerName](std::shared_ptr<Metadata::ModStruct> i) {
- return i->project_id == ver_dep.addonId && i->provider == providerName;
- });
- dep == m_mods.end()) { // check the existing mods
- if (auto dep = std::find_if(m_pack_dependencies.begin(), m_pack_dependencies.end(),
- [&ver_dep, providerName](std::shared_ptr<PackDependency> i) {
- return i->pack->addonId == ver_dep.addonId && i->pack->provider == providerName;
- });
- dep == m_pack_dependencies.end()) { // check loaded dependencies
- c_dependencies.append(ver_dep);
- }
- }
- }
- }
- }
+ if (ver_dep.type != ModPlatform::DependencyType::REQUIRED)
+ continue;
+
+ if (auto dep = std::find_if(c_dependencies.begin(), c_dependencies.end(),
+ [&ver_dep](const ModPlatform::Dependency& i) { return i.addonId == ver_dep.addonId; });
+ dep != c_dependencies.end())
+ continue; // check the current dependency list
+
+ if (auto dep = std::find_if(m_selected.begin(), m_selected.end(),
+ [&ver_dep, providerName](std::shared_ptr<PackDependency> i) {
+ return i->pack->addonId == ver_dep.addonId && i->pack->provider == providerName;
+ });
+ dep != m_selected.end())
+ continue; // check the selected versions
+
+ if (auto dep = std::find_if(m_mods.begin(), m_mods.end(),
+ [&ver_dep, providerName](std::shared_ptr<Metadata::ModStruct> i) {
+ return i->project_id == ver_dep.addonId && i->provider == providerName;
+ });
+ dep != m_mods.end())
+ continue; // check the existing mods
+
+ if (auto dep = std::find_if(m_pack_dependencies.begin(), m_pack_dependencies.end(),
+ [&ver_dep, providerName](std::shared_ptr<PackDependency> i) {
+ return i->pack->addonId == ver_dep.addonId && i->pack->provider == providerName;
+ });
+ dep != m_pack_dependencies.end()) // check loaded dependencies
+ continue;
+
+ c_dependencies.append(ver_dep);
}
return c_dependencies;
};
diff --git a/launcher/minecraft/mod/tasks/GetModDependenciesTask.h b/launcher/minecraft/mod/tasks/GetModDependenciesTask.h
index 3824e781..99d5afb0 100644
--- a/launcher/minecraft/mod/tasks/GetModDependenciesTask.h
+++ b/launcher/minecraft/mod/tasks/GetModDependenciesTask.h
@@ -42,7 +42,7 @@ class GetModDependenciesTask : public SequentialTask {
ModPlatform::Dependency dependency;
ModPlatform::IndexedPack::Ptr pack;
ModPlatform::IndexedVersion version;
- PackDependency(){};
+ PackDependency() = default;
PackDependency(const ModPlatform::IndexedPack::Ptr p, const ModPlatform::IndexedVersion& v)
{
pack = p;