From 752d46ea1271d6736d6b5dd95c13456d12e7ce28 Mon Sep 17 00:00:00 2001 From: artdeell Date: Thu, 22 Jul 2021 19:50:09 +0300 Subject: [PATCH] Automatically add the resource pack and set renderer for 1.17 on GL4ES --- .../src/main/assets/assets-v0.zip | Bin 0 -> 118873 bytes .../tasks/MinecraftDownloaderTask.java | 5 + .../kdt/pojavlaunch/utils/V117CompatUtil.java | 158 ++++++++++++++++++ .../src/main/res/values/strings.xml | 5 +- 4 files changed, 167 insertions(+), 1 deletion(-) create mode 100644 app_pojavlauncher/src/main/assets/assets-v0.zip create mode 100644 app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/V117CompatUtil.java diff --git a/app_pojavlauncher/src/main/assets/assets-v0.zip b/app_pojavlauncher/src/main/assets/assets-v0.zip new file mode 100644 index 0000000000000000000000000000000000000000..e15e45dfeb83035a9ea4024900a227a558246aab GIT binary patch literal 118873 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�{EK&Uhk?LS`FLpi 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 literal 0 HcmV?d00001 diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/tasks/MinecraftDownloaderTask.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/tasks/MinecraftDownloaderTask.java index a25b7983c..ccb8ac29c 100644 --- a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/tasks/MinecraftDownloaderTask.java +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/tasks/MinecraftDownloaderTask.java @@ -2,6 +2,7 @@ package net.kdt.pojavlaunch.tasks; import android.app.*; import android.content.*; +import android.content.res.AssetManager; import android.graphics.*; import android.os.*; import android.util.*; @@ -116,6 +117,10 @@ public class MinecraftDownloaderTask extends AsyncTask 20210225) V117CompatUtil.runCheck(p1[0],mActivity); + } try { assets = downloadIndex(verInfo.assets, new File(Tools.ASSETS_PATH, "indexes/" + verInfo.assets + ".json")); } catch (IOException e) { diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/V117CompatUtil.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/V117CompatUtil.java new file mode 100644 index 000000000..f25223f77 --- /dev/null +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/V117CompatUtil.java @@ -0,0 +1,158 @@ +package net.kdt.pojavlaunch.utils; + +import android.app.Activity; +import android.content.Context; +import android.content.res.AssetManager; +import android.util.Log; + +import androidx.appcompat.app.AlertDialog; + +import net.kdt.pojavlaunch.R; +import net.kdt.pojavlaunch.Tools; +import net.kdt.pojavlaunch.prefs.LauncherPreferences; +import net.kdt.pojavlaunch.tasks.MinecraftDownloaderTask; +import net.kdt.pojavlaunch.value.PerVersionConfig; + +import org.apache.commons.io.IOUtils; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.concurrent.atomic.AtomicBoolean; + +public class V117CompatUtil { + /* + /* + New rendering engine was added in snapshot 21w10a + 21a08b (FP (GL2) engine): 20210225 + 21w10a (non-FP engine): 20210310 + + boolean skipResDialog = false; + if(mcReleaseDate > 20210225) skipResDialog = true; + PerVersionConfig.update(); //Prepare the PVC + PerVersionConfig.VersionConfig cfg = PerVersionConfig.configMap.get(p1[0]); //Get the version config... + if (cfg == null) { + cfg = new PerVersionConfig.VersionConfig();//or create a new one! + PerVersionConfig.configMap.put(p1[0], cfg);//and put it into the base + } + MCOptionUtils.load(); + + if(!skipResDialog) { + AtomicBoolean proceed = new AtomicBoolean(false); + Object lock = new Object(); + mActivity.runOnUiThread(() -> { + AlertDialog.Builder bldr = new AlertDialog.Builder(mActivity); + bldr.setTitle(R.string.global_warinng); + bldr.setMessage(R.string.compat_117_message); + bldr.setPositiveButton(android.R.string.ok, (dialog, which) -> { + proceed.set(true); + synchronized (lock) { lock.notifyAll(); } + dialog.dismiss(); + }); + bldr.setNegativeButton(android.R.string.cancel, (dialog, which) -> { + synchronized (lock) { lock.notifyAll(); } + dialog.dismiss(); + }); + bldr.setCancelable(false); + bldr.show(); + }); + synchronized (lock) { + lock.wait(); + } + if(proceed.get()) { + File resourcepacksDir = new File(cfg.gamePath==null? Tools.DIR_GAME_NEW:cfg.gamePath,"resourcepacks"); + if(!resourcepacksDir.exists()) resourcepacksDir.mkdirs(); + FileOutputStream fos = new FileOutputStream(new File(resourcepacksDir,"assets-v0.zip")); + InputStream is = this.mActivity.getAssets().open("assets-v0.zip"); + IOUtils.copy(is,fos); + is.close();fos.close(); + String resourcepacks = MCOptionUtils.get("resourcePacks"); + if(resourcepacks == null || !resourcepacks.contains("assets-v0.zip")) { + List resPacksArray = resourcepacks == null ? new ArrayList(): Arrays.asList() + } + }else throw new MinecraftDownloaderTask.SilentException(); + } + */ + private static List getTexturePackList(String param) { + Log.i("V117CompatDebug",param); + if("[]".equals(param)) return new ArrayList<>(); + Log.i("V117CompatDebug","ph2"); + if(param == null) return new ArrayList<>(); + Log.i("V117CompatDebug","ph3"); + String rawList = param.substring(1,param.length()-1); + Log.i("V117CompatDebug",rawList); + return new ArrayList<>(Arrays.asList(rawList.split(","))); + } + private static String regenPackList(List packs) { + if(packs.size()==0) return "[]"; + String ret = "["+packs.get(0); + for(int i = 1; i < packs.size(); i++) { + ret += ","+packs.get(i); + } + ret += "]"; + return ret; + } + public static void runCheck(String version, Activity ctx) throws Exception{ + + PerVersionConfig.VersionConfig cfg = PerVersionConfig.configMap.get(version); + MCOptionUtils.load(); + + List packList =getTexturePackList(MCOptionUtils.get("resourcePacks")); + String renderer = cfg != null && cfg.renderer != null?cfg.renderer:LauncherPreferences.PREF_RENDERER; + + if(renderer.equals("vulkan_zink")) return; //don't install for zink users; + if(packList.contains("\"assets-v0.zip\"") && renderer.equals("opengles2_5")) return; + + Object lock = new Object(); + AtomicBoolean proceed = new AtomicBoolean(false); + + ctx.runOnUiThread(() -> { + AlertDialog.Builder bldr = new AlertDialog.Builder(ctx); + bldr.setTitle(R.string.global_warinng); + bldr.setMessage(R.string.compat_117_message); + bldr.setPositiveButton(android.R.string.ok, (dialog, which) -> { + proceed.set(true); + synchronized (lock) { lock.notifyAll(); } + dialog.dismiss(); + }); + bldr.setNegativeButton(android.R.string.cancel, (dialog, which) -> { + synchronized (lock) { lock.notifyAll(); } + dialog.dismiss(); + }); + bldr.setCancelable(false); + bldr.show(); + }); + + synchronized (lock) { + lock.wait(); + } + if(proceed.get()) { + if (cfg == null) { + cfg = new PerVersionConfig.VersionConfig(); + PerVersionConfig.configMap.put(version, cfg); + } + cfg.renderer = "opengles2_5"; + String path = Tools.DIR_GAME_NEW; + if(cfg.gamePath != null && !cfg.gamePath.isEmpty()) path = cfg.gamePath; + copyResourcePack(path,ctx.getAssets()); + packList.add(0,"\"assets-v0.zip\""); + MCOptionUtils.set("resourcePacks",regenPackList(packList)); + MCOptionUtils.save(); + PerVersionConfig.update(); + }else{ + throw new MinecraftDownloaderTask.SilentException(); + } + } + public static void copyResourcePack(String gameDir, AssetManager am) throws IOException { + File resourcepacksDir = new File(gameDir,"resourcepacks"); + if(!resourcepacksDir.exists()) resourcepacksDir.mkdirs(); + FileOutputStream fos = new FileOutputStream(new File(resourcepacksDir,"assets-v0.zip")); + InputStream is = am.open("assets-v0.zip"); + IOUtils.copy(is,fos); + is.close();fos.close(); + } +} diff --git a/app_pojavlauncher/src/main/res/values/strings.xml b/app_pojavlauncher/src/main/res/values/strings.xml index 1b0a474ba..db2b039af 100644 --- a/app_pojavlauncher/src/main/res/values/strings.xml +++ b/app_pojavlauncher/src/main/res/values/strings.xml @@ -108,12 +108,12 @@ Snapshot Old-alpha Old-beta - Clone Edit Error + Warning Load Name Remove @@ -223,4 +223,7 @@ Default You must have at least one Java Runtime installed Can\'t find any compartible Java Runtime + + Minecraft 21w10a+ requires the OpenGL 3.2 core profile. Sadly, GL4ES wrapper doesn\'t fully support it at the moment, but there are some additional resources you can install to run these versions. Press OK to confirm installation, and press Cancel to abort launch. +