1use std::path::PathBuf;
2
3pub mod api;
4pub mod auth;
5pub mod download;
6pub mod error;
7pub mod fabric;
8mod file;
9pub mod launch;
10
11pub fn download_version(version: &str) {
12 let base_path = PathBuf::from(std::env::home_dir().unwrap()).join(".saturn-launcher");
13 let jre_path = base_path.join("jre");
14 let instances_path = base_path.join("instances");
15 let instance = instances_path.join(version);
16
17 download::download_minecraft_version(&instance, &jre_path, version).unwrap()
18}
19
20pub fn launch_version(version: &str) {
21 let base_path = PathBuf::from(std::env::home_dir().unwrap()).join(".saturn-launcher");
22 let jre_path = base_path.join("jre");
23 let instances_path = base_path.join("instances");
24 let instance = instances_path.join(version);
25
26 launch::launch_minecraft_version(
27 &instance,
28 &jre_path,
29 &format!("{version}-fabric"),
30 &auth::Account::Offline {
31 name: "Daddy".into(),
32 uuid: "Daddy".into(),
33 },
34 )
35 .unwrap()
36}
37
38pub fn install_fabric(version: &str, loader: &str) {
39 let base_path = PathBuf::from(std::env::home_dir().unwrap()).join(".saturn-launcher");
40 let instances_path = base_path.join("instances");
41 let instance = instances_path.join(version);
42 fabric::install_fabric(&instance, version, loader).unwrap()
43}