aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--launcher/modplatform/flame/FlamePackExportTask.cpp18
-rw-r--r--launcher/ui/MainWindow.cpp9
2 files changed, 19 insertions, 8 deletions
diff --git a/launcher/modplatform/flame/FlamePackExportTask.cpp b/launcher/modplatform/flame/FlamePackExportTask.cpp
index e73f3de5..e5eeb098 100644
--- a/launcher/modplatform/flame/FlamePackExportTask.cpp
+++ b/launcher/modplatform/flame/FlamePackExportTask.cpp
@@ -409,16 +409,20 @@ QByteArray FlamePackExportTask::generateIndex()
// convert all available components to mrpack dependencies
if (minecraft != nullptr)
version["version"] = minecraft->m_version;
-
- QJsonObject loader;
+ QString id;
if (quilt != nullptr)
- loader["id"] = "quilt-" + quilt->getVersion();
+ id = "quilt-" + quilt->getVersion();
else if (fabric != nullptr)
- loader["id"] = "fabric-" + fabric->getVersion();
+ id = "fabric-" + fabric->getVersion();
else if (forge != nullptr)
- loader["id"] = "forge-" + forge->getVersion();
- loader["primary"] = true;
- version["modLoaders"] = QJsonArray({ loader });
+ id = "forge-" + forge->getVersion();
+ version["modLoaders"] = QJsonArray();
+ if (!id.isEmpty()) {
+ QJsonObject loader;
+ loader["id"] = id;
+ loader["primary"] = true;
+ version["modLoaders"] = QJsonArray({ loader });
+ }
obj["minecraft"] = version;
}
diff --git a/launcher/ui/MainWindow.cpp b/launcher/ui/MainWindow.cpp
index 91809c7b..50eb9e64 100644
--- a/launcher/ui/MainWindow.cpp
+++ b/launcher/ui/MainWindow.cpp
@@ -1422,9 +1422,16 @@ void MainWindow::on_actionExportInstanceFlamePack_triggered()
if (m_selectedInstance) {
auto instance = dynamic_cast<MinecraftInstance*>(m_selectedInstance.get());
if (instance) {
+ QString errorMsg;
if (instance->getPackProfile()->getComponent("org.quiltmc.quilt-loader")) {
+ errorMsg = tr("Quilt is currently not supported by CurseForge modpacks.");
+ } else if (auto cmp = instance->getPackProfile()->getComponent("net.minecraft");
+ cmp && cmp->getVersionFile() && cmp->getVersionFile()->type == "snapshot") {
+ errorMsg = tr("Snapshots are currently not supported by CurseForge modpacks.");
+ }
+ if (!errorMsg.isEmpty()) {
QMessageBox msgBox;
- msgBox.setText(tr("Quilt is currently not supported by CurseForge modpacks."));
+ msgBox.setText(errorMsg);
msgBox.exec();
return;
}