法力池

基本信息

属性 值
注册名 Botania:pool(setBlockName(LibBlockNames.POOL),BlockPool.java:65)
方块类 vazkii.botania.common.block.mana.BlockPool
TileEntity vazkii.botania.common.block.tile.mana.TilePool
材质 Material.rock(BlockPool.java:61)
硬度 2.0(BlockPool.java:62)
爆炸抗性 10.0(BlockPool.java:63)
脚步声 soundTypeStone(BlockPool.java:64)
TileEntity 接口 IManaPool, IDyablePool, IKeyLocked, ISparkAttachable, IThrottledPacket,TilePool.java:60

功能

法力池(Mana Pool)是 Botania 魔力网络的标准收集器,即 IManaCollector 的参考实现,也是整套魔力量系统的中心节点。生成花把法力注入池,池再通过散播器(Mana Spreader)把法力送往其他方块。

池是一个可着色的液体方块:TilePool 实现了 IDyablePool(可用染料染色),并保存 TAG_COLOR。它还实现了 ISparkAttachable(可接手法力火花)与 IKeyLocked(可用红石键锁定),IThrottledPacket 用于限制网络包发送频率。

数值

数值名 值 来源
标准容量 1 000 000 mana TilePool.MAX_MANA,TilePool.java:62
稀释容量 10 000 mana TilePool.MAX_MANA_DILLUTED,TilePool.java:63
容量选择规则 manaCap = getBlockMetadata() == 2 ? MAX_MANA_DILLUTED : MAX_MANA TilePool.java:189
硬度 2.0 BlockPool.java:62
爆炸抗性 10.0 BlockPool.java:63

meta = 2 的变体即稀释法力池(Mana Pool Diluted),容量只有标准池的 1%,用于对容量敏感的场合。

交互

触发 行为
放置 注册为 Botania:pool,Material.rock 质地
相邻生成花 花通过 ManaNetworkEvent.addCollector 注册后自动向池注入法力(IManaCollector 实现契约)
isFull() 返回 true 时停止接收法力爆裂(IManaReceiver 接口)
染色 实现 IDyablePool,颜色存于 NBT TAG_COLOR(TilePool.java:68)
红石键 实现 IKeyLocked,NBT TAG_INPUT_KEY / TAG_OUTPUT_KEY(TilePool.java:73-74)
破坏 法力随之丢失

NBT 标签共 10 个:mana、knownMana、outputting、color、manaCap、canAccept、canSpare、fragile、inputKey、outputKey(TilePool.java:65-74)。

合成配方

无法核实 —— 本次核查未读取 ModCraftingRecipes 中 pool 对应的配方行,不做推断。

相关条目