aboutsummaryrefslogtreecommitdiff
path: root/src-tauri/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src-tauri/src/lib.rs')
-rw-r--r--src-tauri/src/lib.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs
index d4b9349f..e22801c5 100644
--- a/src-tauri/src/lib.rs
+++ b/src-tauri/src/lib.rs
@@ -141,6 +141,19 @@ pub fn find_game_install_location() -> Result<GameInstall, String> {
Err("Could not auto-detect game install location! Please enter it manually.".to_string())
}
+/// Checks whether the provided path is a valid Titanfall2 gamepath by checking against a certain set of criteria
+pub fn check_is_valid_game_path(game_install_path: &str) -> Result<(), String> {
+ let path_to_titanfall2_exe = format!("{game_install_path}/Titanfall2.exe");
+ let is_correct_game_path = std::path::Path::new(&path_to_titanfall2_exe).exists();
+ log::info!("Titanfall2.exe exists in path? {}", is_correct_game_path);
+
+ // Exit early if wrong game path
+ if !is_correct_game_path {
+ return Err(format!("Incorrect game path \"{game_install_path}\"")); // Return error cause wrong game path
+ }
+ Ok(())
+}
+
/// Copied from `papa` source code and modified
///Extract N* zip file to target game path
// fn extract(ctx: &Ctx, zip_file: File, target: &Path) -> Result<()> {