diff --git a/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/BukkitCompatibilityManager.java b/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/BukkitCompatibilityManager.java index c4888be8c..a4a72da12 100644 --- a/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/BukkitCompatibilityManager.java +++ b/bukkit/compatibility/src/main/java/net/momirealms/craftengine/bukkit/compatibility/BukkitCompatibilityManager.java @@ -67,11 +67,6 @@ public class BukkitCompatibilityManager implements CompatibilityManager { // } // } } - } - - @Override - public void onDelayedEnable() { - this.initItemHooks(); // WorldEdit if (this.isPluginEnabled("FastAsyncWorldEdit")) { this.initFastAsyncWorldEditHook(); @@ -80,6 +75,12 @@ public class BukkitCompatibilityManager implements CompatibilityManager { this.initWorldEditHook(); logHook("WorldEdit"); } + } + + @Override + public void onDelayedEnable() { + this.initItemHooks(); + if (this.isPluginEnabled("LuckPerms")) { this.initLuckPermsHook(); logHook("LuckPerms"); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/CraftEngineFurniture.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/CraftEngineFurniture.java index 62d1ef3f5..e899291a4 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/CraftEngineFurniture.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/CraftEngineFurniture.java @@ -49,7 +49,7 @@ public final class CraftEngineFurniture { * @return the loaded furniture */ @Nullable - public static Furniture place(Location location, Key furnitureId) { + public static BukkitFurniture place(Location location, Key furnitureId) { CustomFurniture furniture = byId(furnitureId); if (furniture == null) return null; return place(location, furnitureId, furniture.getAnyPlacement()); @@ -64,7 +64,7 @@ public final class CraftEngineFurniture { * @return the loaded furniture */ @Nullable - public static Furniture place(Location location, Key furnitureId, AnchorType anchorType) { + public static BukkitFurniture place(Location location, Key furnitureId, AnchorType anchorType) { CustomFurniture furniture = byId(furnitureId); if (furniture == null) return null; return BukkitFurnitureManager.instance().place(location, furniture, FurnitureExtraData.builder().anchorType(anchorType).build(), true); @@ -79,7 +79,7 @@ public final class CraftEngineFurniture { * @return the loaded furniture */ @NotNull - public static Furniture place(Location location, CustomFurniture furniture, AnchorType anchorType) { + public static BukkitFurniture place(Location location, CustomFurniture furniture, AnchorType anchorType) { return BukkitFurnitureManager.instance().place(location, furniture, FurnitureExtraData.builder().anchorType(anchorType).build(), true); } @@ -93,7 +93,7 @@ public final class CraftEngineFurniture { * @return the loaded furniture */ @Nullable - public static Furniture place(Location location, Key furnitureId, AnchorType anchorType, boolean playSound) { + public static BukkitFurniture place(Location location, Key furnitureId, AnchorType anchorType, boolean playSound) { CustomFurniture furniture = byId(furnitureId); if (furniture == null) return null; return BukkitFurnitureManager.instance().place(location, furniture, FurnitureExtraData.builder().anchorType(anchorType).build(), playSound); @@ -109,7 +109,7 @@ public final class CraftEngineFurniture { * @return the loaded furniture */ @NotNull - public static Furniture place(Location location, CustomFurniture furniture, AnchorType anchorType, boolean playSound) { + public static BukkitFurniture place(Location location, CustomFurniture furniture, AnchorType anchorType, boolean playSound) { return BukkitFurnitureManager.instance().place(location, furniture, FurnitureExtraData.builder().anchorType(anchorType).build(), playSound); } @@ -153,7 +153,7 @@ public final class CraftEngineFurniture { * @return the loaded furniture */ @Nullable - public static Furniture getLoadedFurnitureByBaseEntity(@NotNull Entity baseEntity) { + public static BukkitFurniture getLoadedFurnitureByBaseEntity(@NotNull Entity baseEntity) { return BukkitFurnitureManager.instance().loadedFurnitureByRealEntityId(baseEntity.getEntityId()); } @@ -164,7 +164,7 @@ public final class CraftEngineFurniture { * @return the loaded furniture */ @Nullable - public static Furniture getLoadedFurnitureBySeat(@NotNull Entity seat) { + public static BukkitFurniture getLoadedFurnitureBySeat(@NotNull Entity seat) { Integer baseEntityId = seat.getPersistentDataContainer().get(BukkitFurnitureManager.FURNITURE_SEAT_BASE_ENTITY_KEY, PersistentDataType.INTEGER); if (baseEntityId == null) return null; return BukkitFurnitureManager.instance().loadedFurnitureByRealEntityId(baseEntityId); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureBreakEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureBreakEvent.java index 204a8d8c1..db42cb252 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureBreakEvent.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureBreakEvent.java @@ -26,7 +26,7 @@ public class FurnitureBreakEvent extends PlayerEvent implements Cancellable { } @NotNull - public Furniture furniture() { + public BukkitFurniture furniture() { return this.furniture; } diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureInteractEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureInteractEvent.java index 3600e70fd..b89bb7ba3 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureInteractEvent.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureInteractEvent.java @@ -43,7 +43,7 @@ public class FurnitureInteractEvent extends PlayerEvent implements Cancellable { } @NotNull - public Furniture furniture() { + public BukkitFurniture furniture() { return this.furniture; } diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurniturePlaceEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurniturePlaceEvent.java index 35862abb1..e6f1405c1 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurniturePlaceEvent.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurniturePlaceEvent.java @@ -33,7 +33,7 @@ public class FurniturePlaceEvent extends PlayerEvent implements Cancellable { } @NotNull - public Furniture furniture() { + public BukkitFurniture furniture() { return this.furniture; } diff --git a/core/src/main/java/net/momirealms/craftengine/core/entity/furniture/AbstractFurnitureManager.java b/core/src/main/java/net/momirealms/craftengine/core/entity/furniture/AbstractFurnitureManager.java index bb5c88cf0..5e28da9ac 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/entity/furniture/AbstractFurnitureManager.java +++ b/core/src/main/java/net/momirealms/craftengine/core/entity/furniture/AbstractFurnitureManager.java @@ -126,7 +126,7 @@ public abstract class AbstractFurnitureManager implements FurnitureManager { // add hitboxes List hitboxes = ResourceConfigUtils.parseConfigAsList(placementArguments.get("hitboxes"), HitBoxTypes::fromMap); if (hitboxes.isEmpty() && externalModel.isEmpty()) { - hitboxes.add(defaultHitBox()); + hitboxes = List.of(defaultHitBox()); } // rules diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/CraftEngine.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/CraftEngine.java index d42fea25e..df20daeff 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/CraftEngine.java +++ b/core/src/main/java/net/momirealms/craftengine/core/plugin/CraftEngine.java @@ -308,7 +308,7 @@ public abstract class CraftEngine implements Plugin { Dependencies.BOOSTED_YAML, Dependencies.OPTION, Dependencies.EXAMINATION_API, Dependencies.EXAMINATION_STRING, - Dependencies.ADVENTURE_KEY, Dependencies.ADVENTURE_API, + Dependencies.ADVENTURE_KEY, Dependencies.ADVENTURE_API, Dependencies.ADVENTURE_NBT, Dependencies.MINIMESSAGE, Dependencies.TEXT_SERIALIZER_COMMONS, Dependencies.TEXT_SERIALIZER_LEGACY, Dependencies.TEXT_SERIALIZER_GSON, Dependencies.TEXT_SERIALIZER_GSON_LEGACY, Dependencies.TEXT_SERIALIZER_JSON, Dependencies.AHO_CORASICK, diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/dependency/Dependencies.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/dependency/Dependencies.java index 3342d05b1..8102e8e61 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/dependency/Dependencies.java +++ b/core/src/main/java/net/momirealms/craftengine/core/plugin/dependency/Dependencies.java @@ -197,6 +197,20 @@ public class Dependencies { Relocation.of("adventure", "net{}kyori{}adventure")) ); + public static final Dependency ADVENTURE_NBT = new Dependency( + "adventure-nbt", + "net{}kyori", + "adventure-nbt", + List.of(Relocation.of("option", "net{}kyori{}option"), + Relocation.of("examination", "net{}kyori{}examination"), + Relocation.of("adventure", "net{}kyori{}adventure")) + ) { + @Override + public String getVersion() { + return ADVENTURE_API.getVersion(); + } + }; + public static final Dependency ADVENTURE_KEY = new Dependency( "adventure-key", "net{}kyori", diff --git a/gradle.properties b/gradle.properties index a3b6ef8c4..c17776f19 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.54.5 +project_version=0.0.54.6 config_version=33 lang_version=13 project_group=net.momirealms