Industrial Apiary

基本信息

属性 值
注册名 gendustry:apiary
TileEntity net.bdew.gendustry.machines.apiary.TileApiary
本地化键 tile.gendustry.apiary.name(英文 Industrial Apiary,简中 工业蜂箱)
硬度 2.0(BaseMachineBlock.setHardness(2))
材质 MachineMaterial = Material(MapColor.ironColor)
GUI ID 3
内部槽位 15(getSizeInventory = 15)
创造标签 GendustryCreativeTabs.main(同时是创造标签的图标物品来源)

注册条件:MachineApiary 仅在 Forestry 的 Apiculture 模块启用时注册。Machines.scala 用 if (ForestryHelper.haveRoot("Bees")) 包住 registerMachine(MachineApiary),否则只打一条日志说明不注册。图标物品取自 BlockApiary(GendustryCreativeTabs.main)。

功能

工业蜂箱是全模组唯一的多槽位机器,把 Forestry 蜂箱的产蜜 / 产蜡 / 繁殖流程搬进机器,并用可插拔的 升级件 调节各项参数。

槽位布局(TileApiary.slots):

槽位索引 名称 内容
0 queen 蜂后
1 drone 雄蜂
2–5 upgrades 升级件(4 格)
6–14 output 产出(9 格)

主要行为:

  • 实现 Forestry 的 IBeeModifier / IBeeListener / IBeeHousingInventory,被 Forestry 当作真正的蜂箱看待,可触发 WAILA / 错误状态
  • mods 字段(ApiaryModifiers)汇总全部已装升级件的效果:每 tick 遍历 4 个升级格,调用 getUpgrade(upgrade).applyModifiers(mods, upgrade)
  • 升级件支持堆叠:同一 stackingId 的数量受 getMaxNumber 限制(getMaxAdditionalUpgrades 统计已有同类后返回剩余可放入数),因此可整叠放入
  • 错误状态取自 Forestry 的 IErrorLogicSource(GendustryErrorStates.init() 在 preInit 注册),多个错误通过 IForestryMultiErrorSource 汇总

数值

数值名 值 来源
最大接收能量 100 t tuning.cfg IndustrialApiary.MaxReceivedEnergy
最大储能 10000 MJ MaxStoredEnergy
启动能量 0 MJ ActivationEnergy
每 tick 基础耗能 2 MJ/t BaseMjPerTick
升级件槽位数 4 TileApiary.slots.upgrades
产出槽位数 9 TileApiary.slots.output

BaseMjPerTick 的配置注释写明是 “基础运行开销(MJ/t),在任何修正之前” —— 升级件的 energy 乘算因子在此之后生效。

注意本机没有 PowerUseRate 与 MjPerItem,它不是 bdlib 的加工机(ProcessorMachine)而是 TileBaseProcessor 式的持续耗电模型。

合成配方

LTL
LOL
ASA
字符 物品
L OD:blockGlass(玻璃)
T Mutagen Tank
O OD:ingotBronze(铜锭)
A OD:gearBronze(铜齿轮)
S B:piston(活塞)

相关条目