From b3305e87b8231a42f1e70faa29e1db9d9ef7e996 Mon Sep 17 00:00:00 2001 From: Lucas Schwiderski Date: Wed, 29 Nov 2023 15:21:07 +0100 Subject: [PATCH 1/2] dtmm: Fix importing from `.mod` file --- crates/dtmm/src/controller/import.rs | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/crates/dtmm/src/controller/import.rs b/crates/dtmm/src/controller/import.rs index 68c54a5..c5bbce7 100644 --- a/crates/dtmm/src/controller/import.rs +++ b/crates/dtmm/src/controller/import.rs @@ -244,6 +244,8 @@ fn extract_mod_config(archive: &mut ZipArchive) -> Result<(Mo None }; + tracing::debug!(?legacy_mod_data); + if let Some(name) = find_archive_file(archive, "dtmt.cfg") { let mut f = archive .by_name(&name) @@ -276,6 +278,24 @@ fn extract_mod_config(archive: &mut ZipArchive) -> Result<(Mo Ok((cfg, root)) } + } else if let Some((mod_id, resources, root)) = legacy_mod_data { + let cfg = ModConfig { + bundled: false, + dir: PathBuf::new(), + id: mod_id.clone(), + name: mod_id, + summary: "A mod for the game Warhammer 40,000: Darktide".into(), + version: "N/A".into(), + description: None, + author: None, + image: None, + categories: Vec::new(), + packages: Vec::new(), + resources, + depends: Vec::new(), + }; + + Ok((cfg, root)) } else { eyre::bail!( "Mod needs a config file or `.mod` file. \ From 61e78e97185907e4300c7bb4fd399a37e62dcc86 Mon Sep 17 00:00:00 2001 From: Lucas Schwiderski Date: Wed, 29 Nov 2023 15:21:34 +0100 Subject: [PATCH 2/2] dtmm: Fix writing Nexus image to disk --- crates/dtmm/src/controller/import.rs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/crates/dtmm/src/controller/import.rs b/crates/dtmm/src/controller/import.rs index c5bbce7..5ca4068 100644 --- a/crates/dtmm/src/controller/import.rs +++ b/crates/dtmm/src/controller/import.rs @@ -434,6 +434,8 @@ pub(crate) async fn import_mod(state: ActionState, info: FileInfo) -> Result Result Result