diff --git a/Launcher-Core/Utils.cs b/Launcher-Core/Utils.cs
index 13db5d3..724dff6 100644
--- a/Launcher-Core/Utils.cs
+++ b/Launcher-Core/Utils.cs
@@ -37,11 +37,13 @@ static public class Utils
var loginHandler = JELoginHandlerBuilder.BuildDefault();
var authenticator = loginHandler.CreateAuthenticatorWithNewAccount(default);
- authenticator.AddMsalOAuth(app, msal => msal.DeviceCode(deviceCode =>
- {
- Console.WriteLine(deviceCode.Message);
- return Task.CompletedTask;
- }));
+ authenticator.AddMsalOAuth(app, msal => msal.SystemBrowser());
+ // authenticator.AddMsalOAuth(app, msal => msal.DeviceCode(deviceCode =>
+ // {
+ // Console.WriteLine(deviceCode.Message);
+ // return Task.CompletedTask;
+ // }));
+ // Im too lazy to implement this type of auth
authenticator.AddMsalOAuth(app, msal => msal.Silent());
authenticator.AddXboxAuthForJE(xbox => xbox.Basic());
authenticator.AddJEAuthenticator();
diff --git a/Launcher-UI/ConfigManager.cs b/Launcher-UI/ConfigManager.cs
index 8d07037..dfa34dd 100644
--- a/Launcher-UI/ConfigManager.cs
+++ b/Launcher-UI/ConfigManager.cs
@@ -62,7 +62,7 @@ public class ConfigManager
TomlTable table = TOML.Parse(reader);
// If config don't contains it means it's oudated or broken.
- if (!table.TryGetNode(key, out var node))
+ if (!IsValueExists(table, key))
{
WriteInConfig(key, "NaN");
}
@@ -73,33 +73,46 @@ public class ConfigManager
if ((key == "tweaks-version") & (table[key] != currentTweaksVersion))
{
Console.WriteLine("Warning! Tweaks version mismatch!");
+ WriteInConfig("tweaks-version", "wrong-version");
}
return table[key];
}
- // Handling out-dated or broken toml files by filling with defaults
- switch (key)
- {
- case "runtime-path": { WriteInConfig(key, defaultRuntime); return defaultRuntime; }
- case "last-version-launched": { WriteInConfig(key, defaultVersion); return defaultVersion; }
- case "nickname": { WriteInConfig(key, defaultNickname); return defaultNickname; }
-
- case "accsess-token": { WriteInConfig(key, defaultAccsessToken); return defaultAccsessToken; }
- case "uuid": { WriteInConfig(key, defaultUuid); return defaultUuid; }
- case "login-method": { WriteInConfig(key, defaultLoginType); return defaultLoginType; }
- case "tweaks-version":
- {
- WriteInConfig(key, currentTweaksVersion);
- Console.WriteLine("Warning! Can't locate tweaks version! Attempting auto recovery...");
- return "possibly broken";
- }
- }
-
- return null;
+ return RepairConfig(key);
}
}
+ public static bool IsValueExists(TomlTable table, string key)
+ {
+ if (table.TryGetNode(key, out var _))
+ return true;
+ return false;
+ }
+
+ private static string? RepairConfig(string key)
+ {
+ Console.WriteLine($"Warning! Can't locate {key} in tweaks! Fallback to defaults!");
+ // Handling out-dated or broken toml files by filling with defaults
+ switch (key)
+ {
+ case "runtime-path": { WriteInConfig(key, defaultRuntime); return defaultRuntime; }
+ case "last-version-launched": { WriteInConfig(key, defaultVersion); return defaultVersion; }
+ case "nickname": { WriteInConfig(key, defaultNickname); return defaultNickname; }
+
+ case "accsess-token": { WriteInConfig(key, defaultAccsessToken); return defaultAccsessToken; }
+ case "uuid": { WriteInConfig(key, defaultUuid); return defaultUuid; }
+ case "login-method": { WriteInConfig(key, defaultLoginType); return defaultLoginType; }
+ case "tweaks-version":
+ {
+ WriteInConfig(key, currentTweaksVersion);
+ return "possibly broken";
+ }
+ }
+
+ return null;
+ }
+
public static void WriteInConfig(string key, dynamic value)
{
if (!File.Exists("tweaks.toml"))
diff --git a/Launcher-UI/Views/SessionManagmentWindow.axaml b/Launcher-UI/Views/SessionManagmentWindow.axaml
index 388e954..ca1c78e 100644
--- a/Launcher-UI/Views/SessionManagmentWindow.axaml
+++ b/Launcher-UI/Views/SessionManagmentWindow.axaml
@@ -16,7 +16,7 @@
MinHeight="400"
MaxWidth="500"
MaxHeight="400"
- Background="#353535"
+ Background="#542434"
>
@@ -39,7 +39,7 @@
Text="Session nickname: "
FontFamily="{StaticResource QuicksandFont}"
/>
-
+
@@ -47,7 +47,7 @@
Text="Session login method: "
FontFamily="{StaticResource QuicksandFont}"
/>
-
+
@@ -55,7 +55,7 @@
Text="Session uuid: "
FontFamily="{StaticResource QuicksandFont}"
/>
-
+
diff --git a/Launcher-UI/Views/SessionManagmentWindow.axaml.cs b/Launcher-UI/Views/SessionManagmentWindow.axaml.cs
index 75f0e28..65e4555 100644
--- a/Launcher-UI/Views/SessionManagmentWindow.axaml.cs
+++ b/Launcher-UI/Views/SessionManagmentWindow.axaml.cs
@@ -29,6 +29,10 @@ public partial class SessionManagmentWindow : Window
if (sender is not Button button) return;
_mainWindowVM.Usernick = inputNickname.Text;
+ _mainWindowVM.LoginMethod = "offline"; // Swapping to offline method
+ _mainWindowVM.UUID = "offline"; // Just to be sure
+ _mainWindowVM.AccsesToken = "offline";
+
Console.WriteLine($"Changing nickname to {inputNickname.Text}");
button.Content = "Saved!";
diff --git a/README.md b/README.md
index 84ed532..f7baf20 100644
--- a/README.md
+++ b/README.md
@@ -21,3 +21,4 @@ Licensed in MIT!
- [Minecraft](https://www.minecraft.net)
- [Cmllib](https://github.com/CmlLib/CmlLib.Core.git) - MIT license
- [Avalonia UI](https://github.com/AvaloniaUI/Avalonia) - MIT license
+- [Tommy](https://github.com/dezhidki/Tommy) - MIT license
diff --git a/package/build-targz-linux-ui.sh b/package/build-targz-linux-ui.sh
index dcac85e..08b87a1 100755
--- a/package/build-targz-linux-ui.sh
+++ b/package/build-targz-linux-ui.sh
@@ -1,7 +1,7 @@
cd ../Launcher-UI
out_dir=../package/out/build
-archieve_name=PlombirLinux-v1-1-0.tar.gz
+archieve_name=PlombirLinux-v1-2-1.tar.gz
rm -r $out_dir
diff --git a/package/build-targz-osx-ui.sh b/package/build-targz-osx-ui.sh
index 48b6b50..fb2ec93 100755
--- a/package/build-targz-osx-ui.sh
+++ b/package/build-targz-osx-ui.sh
@@ -1,7 +1,7 @@
cd ../Launcher-UI
out_dir=../package/out/build
-archieve_name=PlombirOSX-v1-1-0.tar.gz
+archieve_name=PlombirOSX-v1-2-1.tar.gz
rm -r $out_dir
diff --git a/package/build-targz-win-ui.sh b/package/build-targz-win-ui.sh
index ccbcd6e..a02f3d8 100755
--- a/package/build-targz-win-ui.sh
+++ b/package/build-targz-win-ui.sh
@@ -1,7 +1,7 @@
cd ../Launcher-UI
out_dir=../package/out/build
-archieve_name=PlombirWindows-v1-1-0.tar.gz
+archieve_name=PlombirWindows-v1-2-1.tar.gz
rm -r $out_dir