use late_java_core::{Launch, MicrosoftAuth, LaunchOptions, MemoryOptions, LoaderOptions, init_logger};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
init_logger();
println!("=== Late Java Core - Ejemplo Básico ===");
println!("Iniciando autenticación Microsoft...");
let auth = MicrosoftAuth::new("00000000402b5328".to_string());
let auth_result = auth.authenticate().await?;
println!("Autenticación exitosa para: {}", auth_result.name);
let options = LaunchOptions {
path: "./minecraft".to_string(),
version: "1.20.4".to_string(),
authenticator: auth_result,
memory: MemoryOptions {
min: "2G".to_string(),
max: "4G".to_string(),
},
loader: LoaderOptions {
path: Some("./loader".to_string()),
loader_type: Some("fabric".to_string()),
build: Some("0.15.9".to_string()),
enable: true,
},
..Default::default()
};
println!("Configuración del launcher completada");
println!("Versión: {}", options.version);
println!("Memoria: {} - {}", options.memory.min, options.memory.max);
println!("Loader: {:?}", options.loader.loader_type);
println!("Iniciando Minecraft...");
let launcher = Launch::new();
launcher.launch(options).await?;
println!("Minecraft cerrado");
Ok(())
}