package io.gitlab.jfronny.dynres; import io.gitlab.jfronny.libweb.api.LibWebAPI; import io.gitlab.jfronny.libweb.api.LibWebInit; import me.sargunvohra.mcmods.autoconfig1u.AutoConfig; import me.sargunvohra.mcmods.autoconfig1u.serializer.JanksonConfigSerializer; import net.fabricmc.api.EnvType; import net.fabricmc.loader.api.FabricLoader; import net.fabricmc.loader.gui.FabricGuiEntry; import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; public class DynRes implements LibWebInit { public static File resFile; public static Cfg cfg; public static String resourceLink = ""; static { AutoConfig.register(Cfg.class, JanksonConfigSerializer::new); cfg = AutoConfig.getConfigHolder(Cfg.class).getConfig(); resFile = new File(FabricLoader.getInstance().getGameDir().toFile(), cfg.resourcesFile); if (!resFile.isFile()) { FabricGuiEntry.displayCriticalError(new FileNotFoundException("The file " + resFile + " does not exist in the game directory but is required"), true); } } @Override public void register(LibWebAPI api) { if (FabricLoader.getInstance().getEnvironmentType() == EnvType.SERVER) { try { resourceLink = api.registerFile("/resources.zip", resFile.toPath(), !cfg.hashResources); Logger.l.info("Initialized DynRes at " + resourceLink); } catch (IOException e) { e.printStackTrace(); } } } }