Skip to content

Commit ccbf782

Browse files
author
IMS212
committed
Beta support
1 parent b9892de commit ccbf782

2 files changed

Lines changed: 14 additions & 3 deletions

File tree

src/main/java/net/hypercubemc/iris_installer/InstallerMeta.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515

1616
public class InstallerMeta {
1717
private final String metaUrl;
18+
private boolean hasBeta;
1819
private final List<InstallerMeta.Version> versions = new ArrayList<>();
1920

2021
public InstallerMeta(String url) {
@@ -23,9 +24,13 @@ public InstallerMeta(String url) {
2324

2425
public void load() throws IOException, JSONException {
2526
JSONObject json = readJsonFromUrl(this.metaUrl);
27+
hasBeta = json.getBoolean("hasBeta");
2628
json.getJSONArray("versions").toList().forEach(element -> versions.add(new Version((HashMap) element)));
2729
}
2830

31+
public boolean hasBeta() {
32+
return hasBeta;
33+
}
2934

3035
public List<InstallerMeta.Version> getVersions() {
3136
return this.versions;
@@ -38,6 +43,7 @@ public static String readAll(Reader reader) throws IOException {
3843
stringBuilder.append((char) codePoint);
3944
}
4045
return "{\n" +
46+
" \"hasBeta\": true,\n" +
4147
" \"versions\": [\n" +
4248
" {\n" +
4349
" \"name\": \"1.16.5\",\n" +

src/main/java/net/hypercubemc/iris_installer/NewInstaller.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,9 @@ public NewInstaller() {
9696

9797
initComponents();
9898

99+
if (!INSTALLER_META.hasBeta()) {
100+
betaSelection.setVisible(false);
101+
}
99102
gameVersionList.removeAllItems();
100103
for (InstallerMeta.Version version : GAME_VERSIONS) {
101104
gameVersionList.addItem(version.name);
@@ -125,7 +128,9 @@ public NewInstaller() {
125128
outdatedText1.setVisible(true);
126129
outdatedText2.setVisible(true);
127130
} else {
128-
betaSelection.setVisible(true);
131+
if (INSTALLER_META.hasBeta()) {
132+
betaSelection.setVisible(true);
133+
}
129134
outdatedText1.setVisible(false);
130135
outdatedText2.setVisible(false);
131136
}
@@ -147,7 +152,7 @@ public NewInstaller() {
147152
try {
148153
URL loaderVersionUrl = new URL("https://raw.githubusercontent.com/IrisShaders/Iris-Installer-Maven/master/latest-loader");
149154
String loaderVersion = installAsMod ? Main.LOADER_META.getLatestVersion(false).getVersion() : Utils.readTextFile(loaderVersionUrl);
150-
boolean success = VanillaLauncherIntegration.installToLauncher(getVanillaGameDir(), getInstallDir(), installAsMod ? "Fabric Loader " + selectedVersion : "Iris for " + selectedVersion, selectedVersion.name, loaderName, loaderVersion, installAsMod ? VanillaLauncherIntegration.Icon.FABRIC: VanillaLauncherIntegration.Icon.IRIS);
155+
boolean success = VanillaLauncherIntegration.installToLauncher(getVanillaGameDir(), getInstallDir(), installAsMod ? "Fabric Loader " + selectedVersion : "Iris for " + selectedVersion.name, selectedVersion.name, loaderName, loaderVersion, installAsMod ? VanillaLauncherIntegration.Icon.FABRIC: VanillaLauncherIntegration.Icon.IRIS);
151156
if (!success) {
152157
System.out.println("Failed to install to launcher, canceling!");
153158
return;
@@ -168,7 +173,7 @@ public NewInstaller() {
168173
progressBar.setValue(0);
169174
installButton.setEnabled(false);
170175

171-
String zipName = "Iris-Sodium" + "-" + selectedVersion.name + ".zip";
176+
String zipName = (betaSelection.isSelected() ? "Iris-Sodium-Beta" : "Iris-Sodium") + "-" + selectedVersion.name + ".zip";
172177

173178
String downloadURL = "https://github.com/IrisShaders/Iris-Installer-Files/releases/latest/download/" + zipName;
174179

0 commit comments

Comments
 (0)