潜行键扩展提示(Extended Tooltip)
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | 无 —— OC 没有为它注册 KeyBinding |
| 实现 | 直接复用原版潜行键 GameSettings.keyBindSneak |
| 默认按键 | 潜行(默认左 Shift) |
| 分类 | Minecraft 原生(不在 OC 的控制项里单独列出) |
| 实现位置 | client/KeyBindings.scala:43 |
功能
按住潜行键时,OC 的物品/方块提示会不截断并追加扩展信息行。
源码(client/KeyBindings.scala:43):
def extendedTooltip = FMLClientHandler.instance.getClient.gameSettings.keyBindSneak
它不是 val ... = new KeyBinding(...),而是一个每次调用都从客户端 GameSettings 现取的原版 KeyBinding 引用。因此:玩家改绑潜行键后,OC 的扩展提示随之改变,无需在 OC 设置里另配。
调用点(源码实测):
| 文件 | 行 | 作用 |
|---|---|---|
util/Tooltip.scala |
22 | 提示过长时不走 tooltip.TooLong 截断提示 |
util/Tooltip.scala |
35 | 启用 Tooltip.extended() 扩展行 |
common/item/Drone.scala |
23 | 无人机物品追加扩展提示 |
common/item/Server.scala |
32 | 服务器物品追加扩展提示 |
common/item/Tablet.scala |
88 | 平板追加扩展提示 |
common/block/Raid.scala |
30 | RAID 追加扩展提示 |
common/block/Microcontroller.scala |
51 | 微控制器追加扩展提示 |
util/Tooltip.scala:25 的截断提示文案会插入 KeyBindings.getKeyBindingName(extendedTooltip) 的当前按键名(原版 GameSettings.getKeyDisplayString),所以提示里显示的按键会跟随玩家的潜行键绑定变化。
相关条目
已订正:
- 原条目「注册名」写作
key.bindSneak—— 源码里没有这个字符串。全仓new KeyBinding(只有 2 处(KeyBindings.scala:45、:47),没有第三处。- 原条目把它列为「Minecraft 原生」分类下的独立条目,容易被误读成 OC 注册的热键。实际它不是注册项,只是引用原版
keyBindSneak。- 原条目标题「Extended Tooltip」沿用 Scala 成员名,缺少与另两条一致的中文/英文对照,已补上。
- 原条目把
分类写成「Minecraft 原生」但未说明它因此不占用控制设置中的独立行,已明确。