大理石基座

基本信息

属性 值
注册名 thaumicinsurgence:marblePedestal
内部 setBlockName pedestalAlpha
类 thaumicinsurgence.block.BlockPedestalAlpha
基类 thaumcraft.common.blocks.BlockStoneDevice
TileEntity 实际创建 thaumcraft.common.tiles.TilePedestal(非本 mod 的类,见缺陷)
硬度 3.0
爆炸抗性 25.0
采集等级 镐 0
渲染类型 Config.blockStoneDeviceThreeRI = -3(未注册的占位值)
贴图 侧面 marble_pedestal_side,顶/底面复用 arcane_marble
包围盒 0.25,0,0.25 → 0.75,0.99,0.75

功能

单格物品基座,用于在 infusion 祭坛中充当核心支撑方块。功能与 Thaumcraft 原生 TilePedestal 一致:单槽位,可放 1 个物品。

贴图是双套:iconPedestal[1](顶面)直接复用 thaumicinsurgence:arcane_marble 贴图,源码中留有注释掉的 thaumcraft:pedestal_side 备选。

摆放要求

非全方块:四周留 1/4 边距,高 0.99。isOpaqueCube() 与 renderAsNormalBlock() 均返回 false。

交互

触发 行为
右键(槽位有物品) 通过 InventoryUtils.dropItemsAtEntity() 掉出全部物品,播放 random.pop(音高 ×1.5 抖动)
右键(槽位为空、手持物品) 复制手持物品、取 1 个放入槽位,手持物 -1(为 0 则清空),播放 random.pop(×1.6)
破坏 继承 BlockStoneDevice,无自定义 breakBlock

客户端(world.isRemote)直接返回 true,逻辑全部在服务端执行。

已知缺陷

Config.setupInfusionAlpha() 把 TileEntityPedestalAlpha(本 mod 自己的类)注册给了 thaumicinsurgence.marblePedestal,但本方块的 createTileEntity() 返回的却是 Thaumcraft 原生的 TilePedestal。源码中该方法上方留有注释 // TODO: NEEDS TO CHANGE,说明这是一个已知的待修项。

结果:TileEntityPedestalAlpha 被注册却永远不会被实例化,成为事实上的死代码。

相关条目