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

41 lines
1.5 KiB
Java
Raw Normal View History

2020-09-07 13:29:44 +02:00
package io.gitlab.jfronny.dynres;
2020-09-23 20:22:36 +02:00
import io.gitlab.jfronny.libweb.api.LibWebAPI;
import io.gitlab.jfronny.libweb.api.LibWebInit;
2020-09-07 15:03:15 +02:00
import me.sargunvohra.mcmods.autoconfig1u.AutoConfig;
import me.sargunvohra.mcmods.autoconfig1u.serializer.JanksonConfigSerializer;
2020-09-07 13:29:44 +02:00
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;
2020-09-23 20:22:36 +02:00
import java.io.IOException;
2020-09-07 13:29:44 +02:00
2020-09-23 20:22:36 +02:00
public class DynRes implements LibWebInit {
2020-09-07 15:03:15 +02:00
public static File resFile;
public static Cfg cfg;
2020-09-23 20:22:36 +02:00
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);
}
}
2020-09-07 13:29:44 +02:00
2020-09-07 15:03:15 +02:00
@Override
2020-09-23 20:22:36 +02:00
public void register(LibWebAPI api) {
if (FabricLoader.getInstance().getEnvironmentType() == EnvType.SERVER) {
try {
2020-09-23 20:22:36 +02:00
resourceLink = api.registerFile("/resources.zip", resFile.toPath(), !cfg.hashResources);
Logger.l.info("Initialized DynRes at " + resourceLink);
2020-09-23 20:22:36 +02:00
} catch (IOException e) {
e.printStackTrace();
}
}
2020-09-07 13:29:44 +02:00
}
}