1
0
Fork 0
minecraft-tweaks-2a03/src/main/java/party/_2a03/mc/MinecraftTweaks2a03.java

62 lines
1.9 KiB
Java

package party._2a03.mc;
import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents;
import net.fabricmc.fabric.api.registry.CommandRegistry;
import net.fabricmc.loader.api.FabricLoader;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Path;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import party._2a03.mc.command.ConfigCommand;
import party._2a03.mc.command.FlyCommand;
import party._2a03.mc.command.HatCommand;
import party._2a03.mc.command.HeadCommand;
import party._2a03.mc.command.HomeCommand;
import party._2a03.mc.command.SpawnCommand;
import party._2a03.mc.util.Config;
import party._2a03.mc.util.Database;
public class MinecraftTweaks2a03 implements ModInitializer {
private static final Logger LOGGER = LogManager.getLogger();
private Path configDir;
@Override
public void onInitialize() {
configDir = new File(FabricLoader.getInstance().getConfigDirectory(), "minecraft-tweaks-2a03").toPath();
if (!Files.exists(configDir)) {
LOGGER.info("Creating 2a03.party config directory");
try {
Files.createDirectory(configDir);
} catch (Exception e) {
e.printStackTrace();
LOGGER.error(e);
return;
}
}
Config.initConfig(configDir.toFile());
Database.init(configDir.toFile());
try {
Config.loadConfig();
Database.open();
} catch (Exception e) {
e.printStackTrace();
LOGGER.error(e);
return;
}
ServerLifecycleEvents.SERVER_STOPPING.register(minecraftServer -> {
Database.close();
});
LOGGER.info("Registering 2a03.party commands");
CommandRegistry.INSTANCE.register(false, dispatcher -> {
ConfigCommand.register(dispatcher);
FlyCommand.register(dispatcher);
HatCommand.register(dispatcher);
HeadCommand.register(dispatcher);
HomeCommand.register(dispatcher);
SpawnCommand.register(dispatcher);
});
}
}