From 49cddbed23c1cf7c8e91f46ea56bf1ca96700ae4 Mon Sep 17 00:00:00 2001 From: XiaoMoMi Date: Sat, 17 May 2025 01:19:04 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D1.20.6=20itemstack?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bukkit/loader/src/main/resources/config.yml | 2 ++ .../craftengine/bukkit/item/ComponentItemWrapper.java | 4 ++-- .../craftengine/core/pack/AbstractPackManager.java | 7 ++++--- .../momirealms/craftengine/core/plugin/config/Config.java | 2 ++ gradle.properties | 6 +++--- 5 files changed, 13 insertions(+), 8 deletions(-) diff --git a/bukkit/loader/src/main/resources/config.yml b/bukkit/loader/src/main/resources/config.yml index 297be7fe4..e42bbb4be 100644 --- a/bukkit/loader/src/main/resources/config.yml +++ b/bukkit/loader/src/main/resources/config.yml @@ -65,6 +65,8 @@ resource-pack: - CustomNameplates/ResourcePack - BetterModel/build - BetterHud/build + merge-external-zip-files: + - CraftEngine/external_packs/example.zip delivery: # Send the resource pack on joining the server send-on-join: true diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/ComponentItemWrapper.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/ComponentItemWrapper.java index 7a6e7c0a3..b7c1eb500 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/ComponentItemWrapper.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/ComponentItemWrapper.java @@ -14,11 +14,11 @@ public class ComponentItemWrapper implements ItemWrapper { private final ItemStack item; public ComponentItemWrapper(final ItemStack item) { - this.item = item; + this.item = FastNMS.INSTANCE.ensureCraftItemStack(item); } public ComponentItemWrapper(final ItemStack item, int count) { - this.item = item; + this.item = FastNMS.INSTANCE.ensureCraftItemStack(item); this.item.setAmount(count); } diff --git a/core/src/main/java/net/momirealms/craftengine/core/pack/AbstractPackManager.java b/core/src/main/java/net/momirealms/craftengine/core/pack/AbstractPackManager.java index c473e100f..c21899ae4 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/pack/AbstractPackManager.java +++ b/core/src/main/java/net/momirealms/craftengine/core/pack/AbstractPackManager.java @@ -646,17 +646,18 @@ public abstract class AbstractPackManager implements PackManager { this.generateEquipments(generatedPackPath); this.generateParticle(generatedPackPath); Path zipFile = fs.getPath("resource_pack.zip"); - + Path finalPath = resourcePackPath(); try { this.zipGenerator.accept(generatedPackPath, zipFile); } catch (Exception e) { this.plugin.logger().severe("Error zipping resource pack", e); } - Files.write(resourcePackPath(), Files.readAllBytes(zipFile)); + Files.createDirectories(finalPath.getParent()); + Files.write(finalPath, Files.readAllBytes(zipFile)); long end = System.currentTimeMillis(); this.plugin.logger().info("Finished generating resource pack in " + (end - start) + "ms"); - this.eventDispatcher.accept(generatedPackPath, resourcePackPath()); + this.eventDispatcher.accept(generatedPackPath, finalPath); } } diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/Config.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/Config.java index fde4746d5..d6faf0675 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/Config.java +++ b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/Config.java @@ -58,6 +58,7 @@ public class Config { protected boolean resource_pack$override_uniform_font; protected List resource_pack$duplicated_files_handler; protected List resource_pack$merge_external_folders; + protected List resource_pack$merge_external_zips; protected boolean resource_pack$protection$crash_tools$method_1; protected boolean resource_pack$protection$crash_tools$method_2; @@ -218,6 +219,7 @@ public class Config { resource_pack$supported_version$min = getVersion(config.get("resource-pack.supported-version.min", "1.20").toString()); resource_pack$supported_version$max = getVersion(config.get("resource-pack.supported-version.max", "LATEST").toString()); resource_pack$merge_external_folders = config.getStringList("resource-pack.merge-external-folders"); + resource_pack$merge_external_zips = config.getStringList("resource-pack.merge-external-zip-files"); resource_pack$delivery$send_on_join = config.getBoolean("resource-pack.delivery.send-on-join", true); resource_pack$delivery$resend_on_upload = config.getBoolean("resource-pack.delivery.resend-on-upload", true); resource_pack$delivery$kick_if_declined = config.getBoolean("resource-pack.delivery.kick-if-declined", true); diff --git a/gradle.properties b/gradle.properties index bbe6c86d5..f91502ba9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ org.gradle.jvmargs=-Xmx1G # Project settings # Rule: [major update].[feature update].[bug fix] -project_version=0.0.53.9 +project_version=0.0.53.10 config_version=32 lang_version=12 project_group=net.momirealms @@ -41,7 +41,7 @@ zstd_version=1.5.7-2 commons_io_version=2.18.0 commons_imaging_version=1.0.0-alpha6 sparrow_nbt_version=0.7.3 -sparrow_util_version=0.45 +sparrow_util_version=0.46 fastutil_version=8.5.15 netty_version=4.1.119.Final joml_version=1.10.8 @@ -51,7 +51,7 @@ byte_buddy_version=1.17.5 ahocorasick_version=0.6.3 snake_yaml_version=2.4 anti_grief_version=0.15 -nms_helper_version=0.65.23 +nms_helper_version=0.65.24 evalex_version=3.5.0 reactive_streams_version=1.0.4 amazon_awssdk_version=2.31.23