9
0
mirror of https://github.com/Xiao-MoMi/craft-engine.git synced 2025-12-25 09:59:20 +00:00

修复高版本trim实现

This commit is contained in:
XiaoMoMi
2025-07-04 06:25:00 +08:00
parent d54d9925f9
commit 484fcc3201
2 changed files with 11 additions and 3 deletions

View File

@@ -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<String, Object> 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()));
}

View File

@@ -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() {}