31 lines
1.5 KiB
Java
31 lines
1.5 KiB
Java
package io.gitlab.jfronny.libjf.config.impl.entrypoint;
|
|
|
|
import com.mojang.brigadier.Command;
|
|
import io.gitlab.jfronny.libjf.LibJf;
|
|
import io.gitlab.jfronny.libjf.config.api.ConfigHolder;
|
|
import net.fabricmc.api.ModInitializer;
|
|
import net.fabricmc.fabric.api.command.v1.CommandRegistrationCallback;
|
|
import net.minecraft.text.LiteralText;
|
|
|
|
import static net.minecraft.server.command.CommandManager.literal;
|
|
|
|
public class JfConfigCommand implements ModInitializer {
|
|
@Override
|
|
public void onInitialize() {
|
|
CommandRegistrationCallback.EVENT.register((dispatcher, dedicated) -> {
|
|
dispatcher.register(literal(LibJf.MOD_ID).requires((serverCommandSource) -> serverCommandSource.hasPermissionLevel(4))
|
|
.then(literal("config").executes(context -> {
|
|
context.getSource().sendFeedback(new LiteralText("[libjf-config-v0] Loaded configs for:"), false);
|
|
ConfigHolder.getInstance().getRegistered().forEach((s, config) -> {
|
|
context.getSource().sendFeedback(new LiteralText("- " + s), false);
|
|
});
|
|
return Command.SINGLE_SUCCESS;
|
|
}).then(literal("reload").executes(context -> {
|
|
ConfigHolder.getInstance().getRegistered().forEach((mod, config) -> config.load());
|
|
context.getSource().sendFeedback(new LiteralText("[libjf-config-v0] Reloaded configs"), true);
|
|
return Command.SINGLE_SUCCESS;
|
|
}))));
|
|
});
|
|
}
|
|
}
|