diff options
8 files changed, 22 insertions, 6 deletions
diff --git a/build.gradle b/build.gradle index 576d544c..8b2140f4 100644 --- a/build.gradle +++ b/build.gradle @@ -31,7 +31,8 @@ repositories { } maven { url "https://repo.codemc.io/repository/maven-public/" } // For Occlusion Culling library maven { url "https://repo.nea.moe/releases" } // For neu repoparser - maven { url "https://oss.sonatype.org/content/repositories/snapshots" } + maven { url "https://oss.sonatype.org/content/repositories/snapshots" } //For YACL + maven { url "https://maven.quiltmc.org/repository/release" } //For YACL maven {url "https://jitpack.io"} } diff --git a/gradle.properties b/gradle.properties index f15f8c90..4e236fb1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -13,7 +13,7 @@ fabric_api_version=0.89.1+1.20.2 # Dependencies ## YACL (https://github.com/isXander/YetAnotherConfigLib) -yacl_version=3.1.1+1.20 +yacl_version=3.2.0+1.20.2 ## Mod Menu (https://modrinth.com/mod/modmenu/versions) mod_menu_version=8.0.0-beta.2 ## REI (https://modrinth.com/mod/rei/versions?l=fabric) diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/ConfigModel.java b/src/main/java/me/xmrvizzy/skyblocker/config/ConfigModel.java index a4b8d1b0..a8f27a35 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/ConfigModel.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/ConfigModel.java @@ -14,6 +14,7 @@ import net.minecraft.client.resource.language.I18n; import net.minecraft.text.Text; import net.minecraft.util.Formatting; +@SuppressWarnings("deprecation") public class ConfigModel { @ConfigEntry public int version = 1; diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/ConfigSerializer.java b/src/main/java/me/xmrvizzy/skyblocker/config/ConfigSerializer.java index 8aaa7d2d..2d63fc76 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/ConfigSerializer.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/ConfigSerializer.java @@ -6,18 +6,23 @@ import com.google.gson.FieldNamingPolicy; import com.google.gson.Gson; import com.google.gson.GsonBuilder; -import dev.isxander.yacl3.config.GsonConfigInstance.ColorTypeAdapter; +import dev.isxander.yacl3.config.v2.impl.serializer.GsonConfigSerializer; +import net.minecraft.item.Item; import net.minecraft.text.Style; import net.minecraft.text.Text; import net.minecraft.util.Identifier; +/** + * Note: The type hierarchy adapters are copied from YACL's code + */ class ConfigSerializer { static final Gson INSTANCE = new GsonBuilder() .setFieldNamingPolicy(FieldNamingPolicy.IDENTITY) .registerTypeHierarchyAdapter(Text.class, new Text.Serializer()) .registerTypeHierarchyAdapter(Style.class, new Style.Serializer()) .registerTypeHierarchyAdapter(Identifier.class, new Identifier.Serializer()) - .registerTypeHierarchyAdapter(Color.class, new ColorTypeAdapter()) + .registerTypeHierarchyAdapter(Color.class, new GsonConfigSerializer.ColorTypeAdapter()) + .registerTypeHierarchyAdapter(Item.class, new GsonConfigSerializer.ItemTypeAdapter()) .serializeNulls() .setPrettyPrinting() .create(); diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/ConfigUtils.java b/src/main/java/me/xmrvizzy/skyblocker/config/ConfigUtils.java index 57ea5893..f5605342 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/ConfigUtils.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/ConfigUtils.java @@ -10,6 +10,6 @@ public class ConfigUtils { public static <E extends Enum<?>> CyclingListControllerBuilder<E> createCyclingListController4Enum(Option<E> opt) { E[] constants = (E[]) opt.binding().defaultValue().getClass().getEnumConstants(); - return CyclingListControllerBuilder.create(opt).values(constants).valueFormatter(c -> Text.of(c.toString())); + return CyclingListControllerBuilder.create(opt).values(constants).formatValue(formatter -> Text.of(formatter.toString())); } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java index 12007671..9020d7a0 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java @@ -23,12 +23,20 @@ import net.fabricmc.loader.api.FabricLoader; import net.minecraft.client.gui.screen.Screen; import net.minecraft.text.Text; +@SuppressWarnings("deprecation") public class SkyblockerConfig { private static final Path PATH = FabricLoader.getInstance().getConfigDir().resolve("skyblocker.json"); private static final GsonConfigInstance<ConfigModel> INSTANCE = GsonConfigInstance.createBuilder(ConfigModel.class) .setPath(PATH) .overrideGsonBuilder(ConfigSerializer.INSTANCE) .build(); + /*private static final ConfigClassHandler<ConfigModel> HANDLER = ConfigClassHandler.createBuilder(ConfigModel.class) + .serializer(config -> GsonConfigSerializerBuilder.create(config) + .setPath(PATH) + .setJson5(false) + .overrideGsonBuilder(ConfigSerializer.INSTANCE) + .build()) + .build();*/ public static ConfigModel get() { return INSTANCE.getConfig(); diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/CustomArmorTrims.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/CustomArmorTrims.java index 97861e93..443ad509 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/CustomArmorTrims.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/CustomArmorTrims.java @@ -140,6 +140,7 @@ public class CustomArmorTrims { return Command.SINGLE_SUCCESS; } + @SuppressWarnings("deprecation") public record ArmorTrimId(@ConfigEntry Identifier material, @ConfigEntry Identifier pattern) implements Pair<Identifier, Identifier> { @Override public Identifier left() { diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 5ccf35c3..0920d7d7 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -38,7 +38,7 @@ "depends": { "fabricloader": ">=0.14.22", "fabric-api": ">=0.89.1+1.20.2", - "yet_another_config_lib_v3": ">=3.1.0+1.20", + "yet_another_config_lib_v3": ">=3.2.0+1.20.2", "minecraft": "~1.20.2" }, "conflicts": { |