using System; using System.Threading.Tasks; using Avalonia.Controls; using LauncherGUI.ViewModels; using LauncherGUI.Views; namespace Plombir; public class LauncherUtils { public async static Task CreateMinecraftInstance(MainWindowViewModel vm, Window windowCaller) { if (vm.Usernick is null) throw new NullReferenceException("Failed to create minecraft instance! Nickname is null!"); if (vm.SelectedVersion is null) throw new NullReferenceException("Failed to create minecraft instance! Selected version is null!"); System.Console.WriteLine($"Creating minecraft instance for {vm.Usernick}, {vm.SelectedVersion} in {vm.RuntimeLocation}"); LoadingWindow loading = new(vm.Usernick, vm.SelectedVersion, vm.RuntimeLocation); ConfigManager.WriteInConfig("last-version-launched", vm.SelectedVersion); ConfigManager.WriteInConfig("nickname", vm.Usernick); loading.Show(); await loading.InitLoading(); loading.Close(); await loading.RunMinecraft(); return; } }