切换节点图层(toggleNodeLayer)
声明了但从未被读取的热键。见下方「已知问题」。
基本信息
| 属性 | 值 |
|---|---|
| 字段名 | KeyBindings.toggleNodeLayer |
| 语言键 | tcnodetracker.key.togglenode |
| 显示名(en_US) | Toggle node overlay |
| 默认按键 | 未绑定(Keyboard.KEY_NONE) |
| 分类语言键 | key.cat.tcnodetracker |
| 分类显示名 | TC Node Tracker |
| 注册条件 | 仅当 Navigator 已加载(TCNodeTracker.isNavigatorLoaded) |
定义于 src/main/java/com/dyonovan/tcnodetracker/bindings/KeyBindings.java:17-20,
注册于同文件 :25-27:
if (TCNodeTracker.isNavigatorLoaded) {
ClientRegistry.registerKeyBinding(toggleNodeLayer);
}
isNavigatorLoaded 在 TCNodeTracker.preInit 里由 Loader.isModLoaded("navigator") 决定
(TCNodeTracker.java:59)。没有 Navigator 时这个热键根本不会出现在选项界面里。
已知问题:注册了但没有任何代码读取
全仓库只有 KeyBindings.java 提到 toggleNodeLayer 这个字段名:
$ grep -rn "toggleNodeLayer" src/main/java
src/main/java/com/dyonovan/tcnodetracker/bindings/KeyBindings.java:17: public static final KeyBinding toggleNodeLayer = new KeyBinding(
src/main/java/com/dyonovan/tcnodetracker/bindings/KeyBindings.java:26: ClientRegistry.registerKeyBinding(toggleNodeLayer);
没有任何 .isPressed() 调用。唯一轮询热键的地方 KeyInputEvent.onKeyInput 只检查
KeyBindings.aspectMenu(events/KeyInputEvent.java:18 和 :22)。
所以:在设置里给它绑定按键不会有任何效果。 玩家若手动绑定了它,会占用一个按键却什么都不发生。
图层开关的实际入口是 Navigator 地图上的按钮,由 节点列表热键顺带触发
(events/KeyInputEvent.java:22-24 的 ThaumcraftNodeButtonManager.instance.toggle()),
或在 Navigator 的图层列表里手动点选。
相关条目
- 节点列表 - 实际负责切换 Navigator 图层的那个热键
- Navigator 地图图层整合 - 图层按钮的行为