|
@@ -2,19 +2,28 @@ package me.lortseam.completeconfig;
|
|
|
|
|
|
import me.lortseam.completeconfig.extensions.CompleteConfigExtension;
|
|
import me.lortseam.completeconfig.extensions.CompleteConfigExtension;
|
|
import me.lortseam.completeconfig.extensions.clothbasicmath.ClothBasicMathExtension;
|
|
import me.lortseam.completeconfig.extensions.clothbasicmath.ClothBasicMathExtension;
|
|
-import net.fabricmc.api.ModInitializer;
|
|
|
|
import net.fabricmc.loader.api.FabricLoader;
|
|
import net.fabricmc.loader.api.FabricLoader;
|
|
import net.fabricmc.loader.api.entrypoint.EntrypointContainer;
|
|
import net.fabricmc.loader.api.entrypoint.EntrypointContainer;
|
|
import org.apache.logging.log4j.LogManager;
|
|
import org.apache.logging.log4j.LogManager;
|
|
import org.apache.logging.log4j.Logger;
|
|
import org.apache.logging.log4j.Logger;
|
|
|
|
|
|
-import java.util.*;
|
|
|
|
|
|
+import java.util.Collection;
|
|
|
|
+import java.util.Collections;
|
|
|
|
+import java.util.HashMap;
|
|
|
|
+import java.util.Map;
|
|
|
|
|
|
-public final class CompleteConfig implements ModInitializer {
|
|
|
|
|
|
+public final class CompleteConfig {
|
|
|
|
|
|
private static final Logger LOGGER = LogManager.getLogger();
|
|
private static final Logger LOGGER = LogManager.getLogger();
|
|
private static final Map<String, CompleteConfigExtension> extensions = new HashMap<>();
|
|
private static final Map<String, CompleteConfigExtension> extensions = new HashMap<>();
|
|
|
|
|
|
|
|
+ static {
|
|
|
|
+ registerExternalExtension("cloth-basic-math", ClothBasicMathExtension.class);
|
|
|
|
+ for (EntrypointContainer<CompleteConfigExtension> entrypoint : FabricLoader.getInstance().getEntrypointContainers("completeconfig-extension", CompleteConfigExtension.class)) {
|
|
|
|
+ extensions.put(entrypoint.getProvider().getMetadata().getId(), entrypoint.getEntrypoint());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
public static void registerExternalExtension(String modID, Class<? extends CompleteConfigExtension> extensionClass) {
|
|
public static void registerExternalExtension(String modID, Class<? extends CompleteConfigExtension> extensionClass) {
|
|
if(!FabricLoader.getInstance().isModLoaded(modID)) return;
|
|
if(!FabricLoader.getInstance().isModLoaded(modID)) return;
|
|
try {
|
|
try {
|
|
@@ -28,12 +37,4 @@ public final class CompleteConfig implements ModInitializer {
|
|
return Collections.unmodifiableCollection(extensions.values());
|
|
return Collections.unmodifiableCollection(extensions.values());
|
|
}
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
|
- public void onInitialize() {
|
|
|
|
- registerExternalExtension("cloth-basic-math", ClothBasicMathExtension.class);
|
|
|
|
- for (EntrypointContainer<CompleteConfigExtension> entrypoint : FabricLoader.getInstance().getEntrypointContainers("completeconfig-extension", CompleteConfigExtension.class)) {
|
|
|
|
- extensions.put(entrypoint.getProvider().getMetadata().getId(), entrypoint.getEntrypoint());
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
}
|
|
}
|