aboutsummaryrefslogtreecommitdiff
path: root/launcher/modplatform/packwiz
diff options
context:
space:
mode:
authorflow <thiagodonato300@gmail.com>2022-05-07 19:39:00 -0300
committerflow <flowlnlnln@gmail.com>2022-05-23 14:58:08 -0300
commit0985adfd74758891c2e61c2de7f930119cab1386 (patch)
treeace9b0cb3744a0ffbbeebfa3aab2ef5d15eb7f9b /launcher/modplatform/packwiz
parent59d628208b403bfb2442291cbca139cbdfcd325f (diff)
downloadPrismLauncher-0985adfd74758891c2e61c2de7f930119cab1386.tar.gz
PrismLauncher-0985adfd74758891c2e61c2de7f930119cab1386.tar.bz2
PrismLauncher-0985adfd74758891c2e61c2de7f930119cab1386.zip
change: support newest changes with packwiz regarding CF
Diffstat (limited to 'launcher/modplatform/packwiz')
-rw-r--r--launcher/modplatform/packwiz/Packwiz.cpp15
-rw-r--r--launcher/modplatform/packwiz/Packwiz.h6
-rw-r--r--launcher/modplatform/packwiz/Packwiz_test.cpp6
-rw-r--r--launcher/modplatform/packwiz/testdata/borderless-mining.pw.toml (renamed from launcher/modplatform/packwiz/testdata/borderless-mining.toml)0
-rw-r--r--launcher/modplatform/packwiz/testdata/screenshot-to-clipboard-fabric.pw.toml (renamed from launcher/modplatform/packwiz/testdata/screenshot-to-clipboard-fabric.toml)0
5 files changed, 18 insertions, 9 deletions
diff --git a/launcher/modplatform/packwiz/Packwiz.cpp b/launcher/modplatform/packwiz/Packwiz.cpp
index cb430c1f..1ad6d75b 100644
--- a/launcher/modplatform/packwiz/Packwiz.cpp
+++ b/launcher/modplatform/packwiz/Packwiz.cpp
@@ -14,9 +14,9 @@ namespace Packwiz {
// Helpers
static inline auto indexFileName(QString const& mod_name) -> QString
{
- if(mod_name.endsWith(".toml"))
+ if(mod_name.endsWith(".pw.toml"))
return mod_name;
- return QString("%1.toml").arg(mod_name);
+ return QString("%1.pw.toml").arg(mod_name);
}
static ModPlatform::ProviderCapabilities ProviderCaps;
@@ -28,7 +28,14 @@ auto V1::createModFormat(QDir& index_dir, ModPlatform::IndexedPack& mod_pack, Mo
mod.name = mod_pack.name;
mod.filename = mod_version.fileName;
- mod.url = mod_version.downloadUrl;
+ if(mod_pack.provider == ModPlatform::Provider::FLAME){
+ mod.mode = "metadata:curseforge";
+ }
+ else {
+ mod.mode = "url";
+ mod.url = mod_version.downloadUrl;
+ }
+
mod.hash_format = mod_version.hash_type;
mod.hash = mod_version.hash;
@@ -84,6 +91,7 @@ void V1::updateModIndex(QDir& index_dir, Mod& mod)
addToStream("side", mod.side);
in_stream << QString("\n[download]\n");
+ addToStream("mode", mod.mode);
addToStream("url", mod.url.toString());
addToStream("hash-format", mod.hash_format);
addToStream("hash", mod.hash);
@@ -186,6 +194,7 @@ auto V1::getIndexForMod(QDir& index_dir, QString& index_file_name) -> Mod
return {};
}
+ mod.mode = stringEntry(download_table, "mode");
mod.url = stringEntry(download_table, "url");
mod.hash_format = stringEntry(download_table, "hash-format");
mod.hash = stringEntry(download_table, "hash");
diff --git a/launcher/modplatform/packwiz/Packwiz.h b/launcher/modplatform/packwiz/Packwiz.h
index 69125dbc..e66d0030 100644
--- a/launcher/modplatform/packwiz/Packwiz.h
+++ b/launcher/modplatform/packwiz/Packwiz.h
@@ -22,8 +22,8 @@ class V1 {
QString side {"both"};
// [download]
+ QString mode {};
QUrl url {};
- // FIXME: make hash-format an enum
QString hash_format {};
QString hash {};
@@ -42,11 +42,11 @@ class V1 {
auto version() -> QVariant& { return file_id; }
};
- /* Generates the object representing the information in a mod.toml file via
+ /* Generates the object representing the information in a mod.pw.toml file via
* its common representation in the launcher, when downloading mods.
* */
static auto createModFormat(QDir& index_dir, ModPlatform::IndexedPack& mod_pack, ModPlatform::IndexedVersion& mod_version) -> Mod;
- /* Generates the object representing the information in a mod.toml file via
+ /* Generates the object representing the information in a mod.pw.toml file via
* its common representation in the launcher.
* */
static auto createModFormat(QDir& index_dir, ::Mod& internal_mod) -> Mod;
diff --git a/launcher/modplatform/packwiz/Packwiz_test.cpp b/launcher/modplatform/packwiz/Packwiz_test.cpp
index 08de332d..9f3c486e 100644
--- a/launcher/modplatform/packwiz/Packwiz_test.cpp
+++ b/launcher/modplatform/packwiz/Packwiz_test.cpp
@@ -14,7 +14,7 @@ class PackwizTest : public QObject {
QString source = QFINDTESTDATA("testdata");
QDir index_dir(source);
- QString name_mod("borderless-mining.toml");
+ QString name_mod("borderless-mining.pw.toml");
QVERIFY(index_dir.entryList().contains(name_mod));
auto metadata = Packwiz::V1::getIndexForMod(index_dir, name_mod);
@@ -39,10 +39,10 @@ class PackwizTest : public QObject {
QString source = QFINDTESTDATA("testdata");
QDir index_dir(source);
- QString name_mod("screenshot-to-clipboard-fabric.toml");
+ QString name_mod("screenshot-to-clipboard-fabric.pw.toml");
QVERIFY(index_dir.entryList().contains(name_mod));
- // Try without the .toml at the end
+ // Try without the .pw.toml at the end
name_mod.chop(5);
auto metadata = Packwiz::V1::getIndexForMod(index_dir, name_mod);
diff --git a/launcher/modplatform/packwiz/testdata/borderless-mining.toml b/launcher/modplatform/packwiz/testdata/borderless-mining.pw.toml
index 16545fd4..16545fd4 100644
--- a/launcher/modplatform/packwiz/testdata/borderless-mining.toml
+++ b/launcher/modplatform/packwiz/testdata/borderless-mining.pw.toml
diff --git a/launcher/modplatform/packwiz/testdata/screenshot-to-clipboard-fabric.toml b/launcher/modplatform/packwiz/testdata/screenshot-to-clipboard-fabric.pw.toml
index 87d70ada..87d70ada 100644
--- a/launcher/modplatform/packwiz/testdata/screenshot-to-clipboard-fabric.toml
+++ b/launcher/modplatform/packwiz/testdata/screenshot-to-clipboard-fabric.pw.toml