diff --git a/app/build/bin/resources.ap_ b/app/build/bin/resources.ap_ index 9af401570..2bea03bdf 100644 Binary files a/app/build/bin/resources.ap_ and b/app/build/bin/resources.ap_ differ diff --git a/app/src/main/assets/launcher_profiles.json b/app/src/main/assets/launcher_profiles.json new file mode 100644 index 000000000..e69de29bb diff --git a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/LauncherProfiles.java b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/LauncherProfiles.java new file mode 100644 index 000000000..a305612de --- /dev/null +++ b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/LauncherProfiles.java @@ -0,0 +1,34 @@ +package net.kdt.pojavlaunch.value.launcherprofiles; +import com.google.gson.*; +import net.kdt.pojavlaunch.*; +import java.io.*; + +public class LauncherProfiles +{ + public static MinecraftLauncherProfiles mainProfileJson; + public static File launcherProfilesFile = new File(Tools.MAIN_PATH + "/launcher_profiles.json"); + public static MinecraftLauncherProfiles getJson() { + try { + if (launcherProfilesFile.exists()) { + if (mainProfileJson == null) { + mainProfileJson = new Gson().fromJson(Tools.read(launcherProfilesFile.getAbsolutePath()), MinecraftLauncherProfiles.class); + } + } else { + mainProfileJson = new MinecraftLauncherProfiles(); + } + insertMissing(); + return mainProfileJson; + } catch (Throwable th) { + throw new RuntimeException(th); + } + } + + public static String insert + + private static void insertMissing() { + if (mainProfileJson.authenticationDatabase == null) { + MinecraftAuthenticationDatabase mad = new MinecraftAuthenticationDatabase(); + mainProfileJson.authenticationDatabase = mad; + } + } +} diff --git a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftAuthenticationDatabase.java b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftAuthenticationDatabase.java index e0b9623d1..461ff7ffc 100644 --- a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftAuthenticationDatabase.java +++ b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftAuthenticationDatabase.java @@ -2,7 +2,7 @@ package net.kdt.pojavlaunch.value.launcherprofiles; public class MinecraftAuthenticationDatabase { - public static String accessToken; - public static String username; - public static MinecraftProfile[] profiles; + public String accessToken; + public String username; + public MinecraftProfile[] profiles; } diff --git a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftLauncherProfiles.java b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftLauncherProfiles.java index 8e42413fc..b55b17365 100644 --- a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftLauncherProfiles.java +++ b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftLauncherProfiles.java @@ -2,7 +2,12 @@ package net.kdt.pojavlaunch.value.launcherprofiles; public class MinecraftLauncherProfiles { - public static MinecraftProfile[] profiles; - public static String clientToken; - public static MinecraftAuthenticationDatabase authenticationDatabase; + public MinecraftProfile[] profiles; + public String clientToken; + public MinecraftAuthenticationDatabase[] authenticationDatabase; + // public Map launcherVersion; + public MinecraftLauncherSettings settings; + // public Map analyticsToken; + public int analyticsFailcount; + public MinecraftSelectedUser selectedUser; } diff --git a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftLauncherSettings.java b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftLauncherSettings.java new file mode 100644 index 000000000..91604dce9 --- /dev/null +++ b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftLauncherSettings.java @@ -0,0 +1,15 @@ +package net.kdt.pojavlaunch.value.launcherprofiles; + +public class MinecraftLauncherSettings +{ + public boolean enableSnapshots; + public boolean enableAdvanced; + public boolean keepLauncherOpen; + public boolean showGameLog; + public String locale; + public boolean showMenu; + public boolean enableHistorical; + public String profileSorting; + public boolean crashAssistance; + public boolean enableAnalytics; +} diff --git a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftProfile.java b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftProfile.java index b8112c613..d2fe3cf4c 100644 --- a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftProfile.java +++ b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftProfile.java @@ -2,16 +2,16 @@ package net.kdt.pojavlaunch.value.launcherprofiles; public class MinecraftProfile { - public static String name; - public static String type; - public static String created; - public static String lastUsed; - public static String icon; - public static String lastVersionId; - public static String gameDir; - public static String javaDir; - public static String javaArgs; - public static String logConfig; - public static boolean logConfigIsXML; - public static MinecraftResolution[]resolution; + public String name; + public String type; + public String created; + public String lastUsed; + public String icon; + public String lastVersionId; + public String gameDir; + public String javaDir; + public String javaArgs; + public String logConfig; + public boolean logConfigIsXML; + public MinecraftResolution[] resolution; } diff --git a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftResolution.java b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftResolution.java index 9687751c7..3a9d95210 100644 --- a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftResolution.java +++ b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftResolution.java @@ -2,6 +2,6 @@ package net.kdt.pojavlaunch.value.launcherprofiles; public class MinecraftResolution { - public static int width; - public static int height; + public int width; + public int height; } diff --git a/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftSelectedUser.java b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftSelectedUser.java new file mode 100644 index 000000000..0bf96e8b6 --- /dev/null +++ b/app/src/main/java/net/kdt/pojavlaunch/value/launcherprofiles/MinecraftSelectedUser.java @@ -0,0 +1,7 @@ +package net.kdt.pojavlaunch.value.launcherprofiles; + +public class MinecraftSelectedUser +{ + public String account; + public String profile; +}