血石

基本信息

属性 值
注册名 bloodarsenal:blood_stone
字段 ModBlocks.blood_stone
类 BlockBloodStone
材质 Material.iron(BlockBloodStone.java:25)
硬度 2.0
抗性 5.0
声音 soundTypePiston
ItemBlock BloodStoneBlock.class
TileEntity 无
贴图 自绘 5 张(registerBlockIcons)
创造标签 有

贴图

方块自行在 registerBlockIcons(BlockBloodStone.java:31)注册 5 张图标:

图标 用途
BloodArsenal:blood_stone_1 顶/底
BloodArsenal:blood_stone_2 侧
BloodArsenal:blood_stone_3 内层
BloodArsenal:blood_stone_4 内层
BloodArsenal:blood_stone_5 内层

已知缺陷

  1. 本 mod 唯一没有设置方块名的方块: blood_stone 通过三参重载 registerBlock(Block, Class, String) (ModBlocks.java:99)注册,而该重载只调用 setCreativeTab, 既不调用 setBlockName 也不调用 setBlockTextureName (对比两参重载 ModBlocks.java:79–:80)。 BlockBloodStone 构造函数(:24–:28)也没有 setBlockName。 两者叠加 → blood_stone 从未设置方块本地化名。 它靠自绘图标掩盖了贴图缺失,但名字缺失无法掩盖。 同走三参重载的 portable_altar(BlockPortableAltar.java:49)与 compacted_mrs(BlockCompactedMRS.java:31)都在自己的构造函数里 补了 setBlockName,只有本方块漏了。
  2. 三参重载缺少 blocksNotToBeRegistered.clear(): ModBlocks.java:102 的循环之前没有 .clear(), 而两参重载在 :86 有。该静态 ArrayList 会残留上一次注册的内容。 当前各方块名互不相同,暂未造成实际后果,但属于状态泄漏缺陷。

相关条目