模式切换按键

基本信息

属性 值
按键 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),实际只在服务端执行一次。