From 912b18fd1bbc54b610f8faa9b3048ad924ad34ef Mon Sep 17 00:00:00 2001 From: Fulminazzo Date: Tue, 5 Mar 2024 14:53:45 +0100 Subject: [PATCH] Added `.item:serializer` module to automatically load and save item objects. Added parsers: - [EnchantmentParser](item/serializer/src/main/java/it/angrybear/serializers/EnchantmentParser.java); - [ItemParser](item/serializer/src/main/java/it/angrybear/serializers/ItemParser.java); - [ShapeParser](item/serializer/src/main/java/it/angrybear/serializers/ShapeParser.java); - [ShapedRecipeParser](item/serializer/src/main/java/it/angrybear/serializers/ShapedRecipeParser.java); - [ShapelessRecipeParser](item/serializer/src/main/java/it/angrybear/serializers/ShapelessRecipeParser.java); - [FurnaceRecipeParser](item/serializer/src/main/java/it/angrybear/serializers/FurnaceRecipeParser.java). Added [YAGLParser](item/serializer/src/main/java/it/angrybear/serializers/YAGLParser.java) to automatically load parsers. Moved everything to package `it.angrybear.yagl`. Reworked `Item#copy()` method: it will try to get a default empty constructor from the current class. If it fails, it defaults to `ItemImpl`. Fixed `Item#copy(Class)` with automatic resolution of interfaces: passing `Item` or `BukkitItem` will convert them into `ItemImpl` and `BukkitItemImpl`. Fixed `Item#copy(Class)` not checking if current item has field of receiving class. Fixed various bugs in **ShapedRecipe**. Fixed recipes not copying items in their most default state (Item). Updated FulmiCollection to version 1.4.1. --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index e3802535..ba72470f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -2,7 +2,7 @@ shadow = "8.1.1" delombok = "8.4" -fulmicollection = "1.4" +fulmicollection = "1.4.1" yamlparser = "1.5.9" spigot = "1.14-R0.1-SNAPSHOT"