Proof of concept of launching Minecraft from Rust

This commit is contained in:
Jai A
2021-07-04 22:46:56 -07:00
parent 93418edbe7
commit a0e35ad853
11 changed files with 1324 additions and 71 deletions

View File

@@ -1,28 +1,28 @@
use futures::{executor, future};
use std::path::Path;
use theseus::launcher::launch_minecraft;
use theseus::launcher::meta::ArgumentType;
#[tokio::main]
async fn main() {
let mut thing1 = theseus::launcher::meta::fetch_version_manifest()
.await
.unwrap();
launch_minecraft("1.15.2", &Path::new("./test")).await;
// let mut thing1 = theseus::launcher::meta::fetch_version_manifest()
// .await
// .unwrap();
//
// future::join_all(thing1.versions.iter().map(|x| async move {
// println!("{}", x.url);
// //println!("{}", x.url);
// let version = theseus::launcher::meta::fetch_version_info(x)
// .await
// .unwrap();
//
// println!("{:?}", version);
// if let Some(args) = &version.minecraft_arguments {
// println!("{:?}", args);
// }
// if let Some(args) = &version.arguments {
// println!("{:?}", args.get(&ArgumentType::Game).unwrap());
// }
// }))
// .await;
if let Some(version) = thing1.versions.iter().find(|x| &*x.id == "1.17") {
println!("{}", version.id);
let thing = theseus::launcher::meta::fetch_version_info(&version)
.await
.unwrap();
theseus::launcher::download::download_client(&Path::new("./versions"), &thing).await;
}
}