diff --git a/src/main/java/codechicken/nei/NEIClientConfig.java b/src/main/java/codechicken/nei/NEIClientConfig.java index 29cbd032..0af5e799 100644 --- a/src/main/java/codechicken/nei/NEIClientConfig.java +++ b/src/main/java/codechicken/nei/NEIClientConfig.java @@ -838,6 +838,7 @@ public class NEIClientConfig { API.addKeyBind("world.creative", 0); API.addHashBind("gui.copy_name", Keyboard.KEY_C + NEIClientUtils.CTRL_HASH); API.addHashBind("gui.copy_oredict", Keyboard.KEY_D + NEIClientUtils.CTRL_HASH); + API.addHashBind("gui.copy_id", Keyboard.KEY_X + NEIClientUtils.CTRL_HASH); API.addHashBind("gui.chat_link_item", Keyboard.KEY_L + NEIClientUtils.CTRL_HASH); } diff --git a/src/main/java/codechicken/nei/api/ShortcutInputHandler.java b/src/main/java/codechicken/nei/api/ShortcutInputHandler.java index e6ad1910..bc7cda27 100644 --- a/src/main/java/codechicken/nei/api/ShortcutInputHandler.java +++ b/src/main/java/codechicken/nei/api/ShortcutInputHandler.java @@ -98,6 +98,9 @@ public abstract class ShortcutInputHandler { if (NEIClientConfig.isKeyHashDown("gui.copy_name")) { return copyItemStackName(stackover); } + if (NEIClientConfig.isKeyHashDown("gui.copy_id")) { + return copyItemStackID(stackover); + } if (NEIClientConfig.isKeyHashDown("gui.copy_oredict")) { return copyItemStackOreDictionary(stackover); @@ -159,6 +162,14 @@ public abstract class ShortcutInputHandler { return true; } + private static boolean copyItemStackID(ItemStack stackover) { + if (stackover == null || stackover.getItem() == null) return false; + GuiScreen.setClipboardString( + stackover.getItem().delegate.name() + + (stackover.getItemDamage() != 0 ? "/" + stackover.getItemDamage() : "")); + return true; + } + private static boolean sendItemStackChatLink(ItemStack stackover) { if (stackover == null) return false; @@ -511,6 +522,7 @@ public abstract class ShortcutInputHandler { hotkeys.put(NEIClientConfig.getKeyName("gui.copy_name"), NEIClientUtils.translate("itempanel.copy_name")); hotkeys.put(NEIClientConfig.getKeyName("gui.copy_oredict"), NEIClientUtils.translate("itempanel.copy_oredict")); + hotkeys.put(NEIClientConfig.getKeyName("gui.copy_id"), NEIClientUtils.translate("itempanel.copy_id")); hotkeys.put( NEIClientConfig.getKeyName("gui.chat_link_item"), NEIClientUtils.translate("itempanel.chat_link_item")); diff --git a/src/main/resources/assets/nei/lang/en_US.lang b/src/main/resources/assets/nei/lang/en_US.lang index c691e035..5e6bfb3f 100644 --- a/src/main/resources/assets/nei/lang/en_US.lang +++ b/src/main/resources/assets/nei/lang/en_US.lang @@ -65,6 +65,7 @@ nei.itempanel.open_crafting=Recipe to make this item nei.itempanel.open_usage=Recipes that use this item nei.itempanel.copy_name=Copy Item Name nei.itempanel.copy_oredict=Copy Item OreDictionary +nei.itempanel.copy_id=Copy Item ID nei.itempanel.chat_link_item=Send item link to chat nei.enchant=Enchant @@ -192,6 +193,7 @@ nei.options.keys.gui.next_tooltip=Next Tooltip nei.options.keys.gui.copy_name=Copy Item Name nei.options.keys.gui.craft_items=Craft Items nei.options.keys.gui.copy_oredict=Copy Item OreDictionary +nei.options.keys.gui.copy_id=Copy Item ID nei.options.keys.gui.chat_link_item=Send item link to chat nei.options.keys.gui.itemzoom_toggle=Toggle Item Zoom nei.options.keys.gui.itemzoom_hold=Hold to Display Item Zoom diff --git a/src/main/resources/assets/nei/lang/zh_CN.lang b/src/main/resources/assets/nei/lang/zh_CN.lang index 550ad77c..d8c1a357 100644 --- a/src/main/resources/assets/nei/lang/zh_CN.lang +++ b/src/main/resources/assets/nei/lang/zh_CN.lang @@ -111,6 +111,7 @@ nei.options.keys.gui.getprevioussearch=上一个搜索 nei.options.keys.gui.getnextsearch=下一个搜索 nei.options.keys.gui.copy_name=复制物品名称 nei.options.keys.gui.copy_oredict=复制物品矿词词典 +nei.options.keys.gui.copy_id=复制物品ID nei.options.keys.world=世界 nei.options.keys.world.chunkoverlay=区块(chunks)边界显示 nei.options.keys.world.moboverlay=刷怪区域显示