Essentia Export Bus
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | thaumicenergistics:part.base(meta/damage = AEPartsEnum.EssentiaExportBus.ordinal(),即 3) |
| 部件类 | thaumicenergistics.common.parts.PartEssentiaExportBus(继承 AE2 PartBaseExportBus<AEEssentiaStack>,实现 ICustomButtonProvider,PartEssentiaExportBus.java:53) |
| 分组 | ME Essentia Import/Export Bus(AEPartsEnum.java:40) |
| 存储类型 | ESSENTIA_STACK_TYPE |
| 过滤槽大小 | 9(MAX_FILTER_SIZE = 9,PartEssentiaExportBus.java:202) |
| 湮灭功能 | 有(isVoidAllowed,默认 false,PartEssentiaExportBus.java:58) |
| 显示名 | Essentia Export Bus(en_US.lang:thaumicenergistics.aeparts.essentia.ExportBus.name) |
功能
Essentia Export Bus(要素输出总线)是 ThE 要素物流的出口端:从 AE2 网络取出要素并注入相邻的 Thaumcraft 要素容器(机器、要素罐、管道)。它与 Essentia Import Bus 方向相反。
核心机制(PartEssentiaExportBus):
- 继承 AE2
PartBaseExportBus<AEEssentiaStack>,获得红石模式、模糊匹配、升级卡槽等全套导出总线行为 pushItemIntoTarget每次推送calculateAmountToSend()个要素(PartEssentiaExportBus.java:118-120)- 湮灭(Void)功能 —— 本总线独有的核心特性:
isVoidAllowed布尔开关,默认false(:58)- 仅当目标为
TileJarFillableVoid(湮灭罐)时才可能生效(:161) - 开启后「不再关心罐子能否装下」,多余要素直接湮灭(
:161-162注释 +:181-182) - 通过 GUI 按钮切换:
toggleVoidAllowed()/getVoidAllowed()(:189-195) - 实现
ICustomButtonProvider以提供自定义按钮数据对象(:53、:59) - 按钮状态通过
Packet_C_ExportBusVoidButtonUpdate/Packet_S_ExportBusVoidButtonUpdate同步 - 提示文本:
thaumicenergistics.tooltip.button.void=Allow Void?、…disabled=Do not void essentia、…allowed=Void essentia if jar is full、…note=Only applies to void jars
- 合成产物注入:
injectCraftedItems(ICraftingLink, IAEStack<?>, Actionable)(:132)—— 接受 AE2 合成请求并把结果作为要素送出 - NBT 键:
redstoneMode、AspectFilter#、upgradeInventory、IsVoidAllowed、Owner(:197-202)
可用升级卡
在 AEPartsEnum.EssentiaExportBus 构造时注册(AEPartsEnum.java:39-41):
| 升级卡 | 上限 |
|---|---|
Upgrades.CAPACITY |
2 |
Upgrades.REDSTONE |
1 |
Upgrades.SPEED |
4 |
Upgrades.CRAFTING |
1 |
注意:Export Bus 比 Import Bus 多一张 CRAFTING 卡,这使它可参与 AE2 的自动合成。
数值
| 数值名 | 值 | 来源 |
|---|---|---|
| 基础传输量 | 4 | calculateAmountToSend() 返回 4 + speed×8(PartEssentiaExportBus.java:82-84) |
| 每级速度卡增量 | 8 | 同上 |
| 满速(4 张速度卡)传输量 | 4 + 4×8 = 36 | 由上两式推算 |
| 要素过滤槽 | 9 | MAX_FILTER_SIZE = 9(:202) |
| 容量卡上限 | 2 | AEPartsEnum.java:40 |
| 红石卡上限 | 1 | AEPartsEnum.java:41 |
| 速度卡上限 | 4 | AEPartsEnum.java:41 |
| 合成卡上限 | 1 | AEPartsEnum.java:41 |
| 湮灭默认状态 | 关闭(isVoidAllowed = false) |
PartEssentiaExportBus.java:58 |
| 湮灭适用目标 | 仅 TileJarFillableVoid |
:161 |
交互
| 触发 | 行为 |
|---|---|
| 相邻要素容器 | 从网络取出要素并注入,每次 calculateAmountToSend() 个 |
| 放入速度卡 | 最多 4 张,每张 +8 传输量 |
| 放入容量卡 | 最多 2 张 |
| 放入红石卡 | 最多 1 张 |
| 放入合成卡 | 最多 1 张,启用要素合成 |
| GUI「湮灭」按钮 | 切换 isVoidAllowed;仅对湮灭罐有效 |
| 湮灭开启且目标为湮灭罐 | 罐满后多余要素被直接湮灭丢弃 |
| AE2 合成请求 | injectCraftedItems 接收并送出要素 |
合成配方
奥术合成(Arcane Crafting),FeatureEssentiaIOBuses.java:96-97:
JCJ
IFI
| 字符 | 物品 |
|---|---|
J |
WardedJar(防护罐) |
C |
CoalescenceCore(凝聚核心) |
I |
IronIngot(铁锭) |
F |
FilterTube(过滤管) |
与 Import Bus 配方结构完全相同,唯一差异是中心字符:D(DiffusionCore)→ C(CoalescenceCore)。
合成所需要素:FIRE 2 + EARTH 2 + WATER 1(FeatureEssentiaIOBuses.java:86-89),与 Import Bus 相同。
研究:两者共用 thaumicenergistics.TEIO 研究节点,研究要素 MECHANISM 5 + METAL 3 + CRYSTAL 3 + ...(FeatureEssentiaIOBuses.java:115-117 起),父研究为伪研究 TUBEFILTER(:109-111)。可用性说明:Essentia Storage Bus 始终注册(FeatureEssentiaIOBuses.checkConfigs 恒返回 true);craft_IO_Buses 开关只影响 Import/Export Bus(见 Essentia Import Bus)。
相关条目
- Essentia Import Bus - 方向相反的对位总线
- Essentia Storage Bus - 面向外部储存罐的第三种总线
- Coalescence Core - 合成原料
- ThE 网络封包 - 湮灭按钮状态同步封包