|
@@ -1,12 +1,14 @@
|
|
package me.lortseam.completeconfig;
|
|
package me.lortseam.completeconfig;
|
|
|
|
|
|
import lombok.Getter;
|
|
import lombok.Getter;
|
|
-import me.lortseam.completeconfig.data.ColorEntry;
|
|
|
|
import me.lortseam.completeconfig.data.Config;
|
|
import me.lortseam.completeconfig.data.Config;
|
|
import me.lortseam.completeconfig.util.TypeUtils;
|
|
import me.lortseam.completeconfig.util.TypeUtils;
|
|
import net.fabricmc.loader.api.FabricLoader;
|
|
import net.fabricmc.loader.api.FabricLoader;
|
|
import net.fabricmc.loader.api.ModContainer;
|
|
import net.fabricmc.loader.api.ModContainer;
|
|
import net.fabricmc.loader.api.metadata.ModMetadata;
|
|
import net.fabricmc.loader.api.metadata.ModMetadata;
|
|
|
|
+import net.minecraft.text.TextColor;
|
|
|
|
+import org.spongepowered.configurate.serialize.CoercionFailedException;
|
|
|
|
+import org.spongepowered.configurate.serialize.TypeSerializer;
|
|
import org.spongepowered.configurate.serialize.TypeSerializerCollection;
|
|
import org.spongepowered.configurate.serialize.TypeSerializerCollection;
|
|
|
|
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
@@ -17,7 +19,14 @@ public final class ModController {
|
|
|
|
|
|
private static final Map<String, ModController> controllers = new HashMap<>();
|
|
private static final Map<String, ModController> controllers = new HashMap<>();
|
|
private static final TypeSerializerCollection GLOBAL_TYPE_SERIALIZERS = TypeSerializerCollection.builder()
|
|
private static final TypeSerializerCollection GLOBAL_TYPE_SERIALIZERS = TypeSerializerCollection.builder()
|
|
- .registerExact(ColorEntry.Serializers.TEXT_COLOR)
|
|
|
|
|
|
+ .registerExact(TypeSerializer.of(TextColor.class, (item, typeSupported) -> {
|
|
|
|
+ return item.getRgb();
|
|
|
|
+ }, value -> {
|
|
|
|
+ if (value instanceof Integer) {
|
|
|
|
+ return TextColor.fromRgb((int) value);
|
|
|
|
+ }
|
|
|
|
+ throw new CoercionFailedException(value, "TextColor");
|
|
|
|
+ }))
|
|
.build();
|
|
.build();
|
|
|
|
|
|
/**
|
|
/**
|