传感器工具包

基本信息

属性 值
注册物品数 3
基类 shedar.mods.ic2.nuclearcontrol.items.ItemSensorKitBase(extends Item)
最大堆叠 1(ItemSensorKitBase.java:23)
创造标签 IC2NuclearControl.tabIC2NC
注册位置 IC2NuclearControl.registerBlocks(),IC2NuclearControl.java:162-164

功能

工具包是定位卡的「安装器」。它们不带数据,作用是在世界里定位目标机器并生成对应的定位卡:右键目标方块,若该方块支持对应的传感器,就产出对应卡片。

三个已注册工具包

注册名 类 英文显示名
ItemRemoteSensorKit ItemKitReactorSensor Remote Sensor Kit
ItemEnergySensorKit ItemKitEnergySensor Energy Sensor Kit
ItemCounterSensorKit ItemKitMultipleSensor Counter Sensor Kit

类定义证据:ItemKitReactorSensor extends ItemSensorKitBase(items/ItemKitReactorSensor.java:20)、ItemKitEnergySensor extends ItemSensorKitBase(items/ItemKitEnergySensor.java:19)、ItemKitMultipleSensor extends ItemSensorKitBase(items/ItemKitMultipleSensor.java:22)。

注册与未本地化名对应(IC2NuclearControl.java:147-149):itemRemoteSensorKit → ItemRemoteSensorKit、itemEnergySensorKit → ItemEnergySensorKit、itemMultipleSensorKit → ItemCounterSensorKit。

数值

数值名 值
最大堆叠 1
产出方式 工具包所在槽位被定位卡直接覆盖(player.inventory.mainInventory[player.inventory.currentItem] = sensorLocationCard)
写入 NBT 键 x、y、z 三个整数(items/ItemSensorKitBase.java:32-37)
成功提示 聊天消息 key SensorKit(items/ItemSensorKitBase.java:52)

交互

触发 行为
右键方块(服务端) 基类 onItemUseFirst 先取 getTargetCoordinates(items/ItemSensorKitBase.java:45),非 null 时用 getItemStackByDamage(stack.getItemDamage()) 生成卡片、写入坐标 NBT,并直接替换玩家当前槽位(items/ItemSensorKitBase.java:47-55)
右键方块(客户端) if (!isServer) return false; 直接返回,逻辑只在服务端执行(items/ItemSensorKitBase.java:43-44)
目标不可监测 getTargetCoordinates 返回 null,onItemUseFirst 返回 false,工具包保留(items/ItemSensorKitBase.java:56)

各子类具体支持的方块类型依赖交叉模组加载情况,见 跨模组集成。

相关条目