diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/ItemSettings.java b/core/src/main/java/net/momirealms/craftengine/core/item/ItemSettings.java index e9199502e..89ae2db4b 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/ItemSettings.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/ItemSettings.java @@ -333,8 +333,16 @@ public class ItemSettings { throw new LocalizedResourceConfigException("warning.config.item.settings.equipment.invalid_asset_id"); } if (VersionHelper.isOrAbove1_21_2() && args.containsKey("slot")) { - EquipmentData data = EquipmentData.fromMap(args); - return settings -> settings.equipment(new ItemEquipment(clientBoundModel, data, optionalEquipment.get())); + if (optionalEquipment.get() instanceof ComponentBasedEquipment) { + EquipmentData data = EquipmentData.fromMap(args); + return settings -> settings.equipment(new ItemEquipment(clientBoundModel, data, optionalEquipment.get())); + } else { + // trim based + Map copiedArgs = new HashMap<>(args); + copiedArgs.put("asset-id", Config.sacrificedVanillaArmorType()); + EquipmentData data = EquipmentData.fromMap(copiedArgs); + return settings -> settings.equipment(new ItemEquipment(clientBoundModel, data, optionalEquipment.get())); + } } else { return settings -> settings.equipment(new ItemEquipment(clientBoundModel, null, optionalEquipment.get())); } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/setting/EquipmentData.java b/core/src/main/java/net/momirealms/craftengine/core/item/setting/EquipmentData.java index 4d9b15e11..9f49c0b19 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/setting/EquipmentData.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/setting/EquipmentData.java @@ -130,7 +130,7 @@ public class EquipmentData { private boolean swappable = true; private boolean damageOnHurt = true; // 1.21.5+ - private boolean equipOnInteract = true; + private boolean equipOnInteract = false; private Key cameraOverlay; public Builder() {}