此事件可在客户端或服务器端使用。
要简单地为物品添加工具提示,您可以使用 event.add(filter, Text[]) 方法。
您可以在服务器端注册动态工具提示处理程序,但处理程序本身必须在客户端。
ItemEvents.modifyTooltips 事件中可用的方法:
event.add(filter, Text[]) - 向物品添加文本行的快捷方法event.add(filter, TooltipRequirements, Text[]) - 相同方法,但第2个参数添加要求。请参见下文event.modify(filter, (tooltip: TooltipActionBuilder) => void) - 无要求地修改工具提示event.modify(filter, TooltipRequirements, (tooltip: TooltipActionBuilder) => void) - 有要求地修改工具提示event.modifyAll((tooltip: TooltipActionBuilder) => void) - 无要求地修改所有工具提示event.modifyAll(TooltipRequirements, (tooltip: TooltipActionBuilder) => void) - 有要求地修改所有工具提示event.modify 的 tooltip 中可用的所有方法:
tooltip.dynamic(id)tooltip.add(Text[]) - 在工具提示末尾添加文本行tooltip.insert(index, Text[]) - 在特定行的工具提示中间插入文本行tooltip.removeLine(index) - 移除特定行tooltip.removeText(Text) - 如果组件内容的任何部分与输入匹配,则移除该行tooltip.removeExactText(Text) - 如果与组件完全匹配,则移除该行tooltip.clear() - 清除整个工具提示工具提示操作按顺序执行,因此如果您调用 tooltip.removeLine(0) 两次,它将移除前两行
可用的要求属性:
shift: true/false - 是否按下 shift 键ctrl: true/false - 是否按下 ctrl 键alt: true/false - 是否按下 alt 键advanced: true/false - 是否启用高级工具提示 (F3+H)creative: true/false - 玩家是否处于创造模式stages: {stageName: true/false} - 玩家是否具有特定阶段您可以组合多个属性,例如 {shift: true, ctrl: false, advanced: true}
脚本文件夹:server_scripts/ 和 client_scripts/