DynRes/src/main/java/io/gitlab/jfronny/dynres/DynRes.java

41 lines
1.5 KiB
Java

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();
}
}
}
}