zh_cn:tutorial:tooltip
Table of Contents
添加物品提示
物品的物品提示
在您的物品类中,像这样重写 appendTooltip
(有关如何翻译提示,请参见lang)。
对于 1.18.2 及之前的版本:
@Override public void appendTooltip(ItemStack itemStack, World world, List<Text> tooltip, TooltipContext tooltipContext) { // 默认为白色文本 tooltip.add(new TranslatableText("item.tutorial.custom_item.tooltip")); // 格式化为红色文本 tooltip.add(new TranslatableText("item.tutorial.custom_item.tooltip").formatted(Formatting.RED) ); }
对于 1.19 之后的版本:
@Override public void appendTooltip(ItemStack itemStack, World world, List<Text> tooltip, TooltipContext tooltipContext) { tooltip.add(Text.translatable("item.tutorial.custom_item.tooltip")); }
对于 1.20.5 之后的版本:
@Override public void appendTooltip(ItemStack itemStack, TooltipContext context, List<Text> tooltip, TooltipType type) { tooltip.add(Text.translatable("item.tutorial.custom_item.tooltip")); }
该方法自从 1.21.5 开始被弃用。要在 1.21.5 添加物品提示,请使用 Fabric API。
方块的物品提示
你也可以在方块类中通过重写类似方法来添加物品提示:
@Override public void appendTooltip(ItemStack itemStack, BlockView world, List<Text> tooltip, TooltipContext tooltipContext) { // 对于 1.18.2 及之前的版本 tooltip.add(new TranslatableText("block.tutorial.custom_block.tooltip")); // 对于 1.19 之后的版本 tooltip.add(Text.translatable("block.tutorial.custom_block.tooltip")); }
对于 1.20.5 之后、1.21.5 之前的版本:
@Override public void appendTooltip(ItemStack itemStack, Item.TooltipContext context, List<Text> tooltip, TooltipType options) { tooltip.add(Text.translatable("block.tutorial.custom_block.tooltip")); }
在 1.21.5 中添加物品提示
自 1.21.5 开始,物品提示的实现方式被重写。大多数物品提示改为使用物品组件实现,其是否显示会受到 tooltip_display
物品组件的影响。不过,还是可以借助 Fabric API 添加自定义的物品提示。可以在代码的模组初始化器部分加入以下代码:
ItemTooltipCallback.EVENT.register((itemStack, tooltipContext, tooltipType, list) -> { if (!itemStack.isOf(TutorialItems.CUSTOM_ITEM)) { return; } list.add(Text.translatable("item.tutorial.custom_item.tooltip")); });
这个例子将为我们在 items 教程中创建的物品添加自定义的物品提示。
zh_cn/tutorial/tooltip.txt · Last modified: 2025/04/01 08:15 by solidblock