From 4be03afa3ff05dd954d9212f65c5f0eff9fd8c14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20M=C3=BCller?= Date: Thu, 5 Nov 2026 13:18:04 +0100 Subject: [PATCH] photos named via item_name instead of custom_name so the recipe book fills the copy recipe, copies keep an anvil name --- .../eu/mhsl/minecraft/pixelpics/survival/CameraItems.java | 4 ++++ .../mhsl/minecraft/pixelpics/survival/CraftingListener.java | 3 ++- .../eu/mhsl/minecraft/pixelpics/survival/PhotoService.java | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/eu/mhsl/minecraft/pixelpics/survival/CameraItems.java b/src/main/java/eu/mhsl/minecraft/pixelpics/survival/CameraItems.java index 31250e8..8256a5a 100644 --- a/src/main/java/eu/mhsl/minecraft/pixelpics/survival/CameraItems.java +++ b/src/main/java/eu/mhsl/minecraft/pixelpics/survival/CameraItems.java @@ -92,6 +92,10 @@ public final class CameraItems { && meta.getMapView().getId() == mapId; } + /** + * The photo's name, set as ITEM_NAME: a CUSTOM_NAME would keep the recipe book from placing the photo (vanilla + * Inventory.isUsableForCrafting skips custom-named stacks for the copy recipe's material ingredient). + */ public static Component photoDisplayName() { return plain("Foto", NamedTextColor.WHITE); } diff --git a/src/main/java/eu/mhsl/minecraft/pixelpics/survival/CraftingListener.java b/src/main/java/eu/mhsl/minecraft/pixelpics/survival/CraftingListener.java index a022fe4..0a411e6 100644 --- a/src/main/java/eu/mhsl/minecraft/pixelpics/survival/CraftingListener.java +++ b/src/main/java/eu/mhsl/minecraft/pixelpics/survival/CraftingListener.java @@ -124,7 +124,8 @@ public class CraftingListener implements Listener { key, PersistentDataType.STRING, src.getPersistentDataContainer().get(key, PersistentDataType.STRING)); - dst.displayName(CameraItems.photoDisplayName()); + dst.itemName(CameraItems.photoDisplayName()); + if (src.hasCustomName()) dst.customName(src.customName()); // anvil-renamed photo copy.setItemMeta(dst); return copy; } diff --git a/src/main/java/eu/mhsl/minecraft/pixelpics/survival/PhotoService.java b/src/main/java/eu/mhsl/minecraft/pixelpics/survival/PhotoService.java index a87a3f3..128c3f0 100644 --- a/src/main/java/eu/mhsl/minecraft/pixelpics/survival/PhotoService.java +++ b/src/main/java/eu/mhsl/minecraft/pixelpics/survival/PhotoService.java @@ -88,7 +88,7 @@ public final class PhotoService { PersistentDataType.STRING, UUID.randomUUID().toString()); meta.setMapView(mapView); - meta.displayName(CameraItems.photoDisplayName()); + meta.itemName(CameraItems.photoDisplayName()); map.setItemMeta(meta); CameraItems.give(player, map); playShutter(player);