模式切换按键
基本信息
| 属性 | 值 |
|---|---|
| 按键 ID | ae2stuff.key.mode(AE2Stuff.scala:54) |
| 本地化键 | itemGroup.bdew.ae2stuff(AE2Stuff.scala:57,中文「应用能源附加机器」) |
| 类型 | gtnhlib SyncedKeybind(AE2Stuff.scala:55-59) |
| 默认键 | 无绑定(Keyboard.CHAR_NONE) |
| 作用物品 | 高级无线设置工具 |
用途
本 mod 只注册了这一个按键。潜行 + 右键 高级无线设置工具 时:
- 按住本键 → 清空该工具的整个坐标队列(
while (hasLocation(stack)) popLocation(stack)),播报ae2stuff.wireless.advtool.queueing.clear - 不按本键 → 在
MODE_QUEUING(队列)与MODE_BINDING(绑定)之间切换模式
见 AdvWirelessKit.scala:57-70。
默认为空的原因
Keyboard.CHAR_NONE 表示玩家必须在 GTNHLib 的按键设置界面自行绑定。默认值是空的,因此直接开箱使用无法清空队列——不按键时潜行右键会误切模式。
与模式 NBT 的关系
模式本身存在物品 NBT 的 mode 键(0 = 队列,1 = 绑定),getMode 在键缺失时写入 MODE_QUEUING(misc/AdvItemLocationStore.scala:111-120)。本按键不存储任何模式状态,只是触发工具内的 toggleMode。
网络同步
SyncedKeybind 由 gtnhlib 在玩家加入时同步,因此服务端也能读到该键是否按下——onItemRightClick 里的判断写在 if (!world.isRemote && player.isSneaking) 分支内(AdvWirelessKit.scala:57),实际只在服务端执行一次。