Prismarine

基本信息

属性 值
注册名 VillageNames:prismarine(单个注册名 + 3 个 metadata)
类 astrotibs.villagenames.prismarine.block.BlockPrismarine(继承 BlockGeneric)
注册条件 GeneralConfig.addPrismarine == true
注册处 block/ModBlocksVN.java:57
材质 Material.rock
硬度 1.5(prismarine/block/BlockPrismarine.java:16)
爆炸抗性 10.0(prismarine/block/BlockPrismarine.java:17)
创造标签 CreativeTabs.tabBlock

功能

Prismarine(海晶石)是 1.8 海洋更新方块组的本 mod 移植版,一个注册名下有 3 个变体(prismarine/block/BlockPrismarine.java:14,构造参数为 "rough", "bricks", "dark"):

metadata 变体 显示名
0 rough Prismarine(tile.prismarine.rough.name)
1 bricks Prismarine Bricks(tile.prismarine.bricks.name)
2 dark Dark Prismarine(tile.prismarine.dark.name)

显示名键见 en_US.lang:110-112。

三个变体共用同一套硬度/抗性(均在 BlockPrismarine 构造器中设置一次,:16-17),因此三者物理属性完全相同。

物品字典

物品字典名 metadata 注册处
blockPrismarine 0 block/ModBlocksVN.java:60
blockPrismarineBrick 1 block/ModBlocksVN.java:61
blockPrismarineDark 2 block/ModBlocksVN.java:62
blockPrismarine WILDCARD_VALUE init/Recipes.java:77

注意 blockPrismarine 存在两次注册:一次指定 meta 0,一次以通配符注册(供他人合成使用)。

合成配方

均为有序(shaped) 物品字典配方,使用 shardPrismarine 作为主材料(init/Recipes.java:78-80):

产出 形状 材料
Dark Prismarine(meta 2) xxx / xyx / xxx x = shardPrismarine,y = dyeBlack
Prismarine(meta 0) xx / xx x = shardPrismarine
Prismarine Bricks(meta 1) xxx / xxx / xxx x = shardPrismarine

即:9 个碎片 → 暗海晶石(消耗 1 个黑色染料),4 个碎片 → 海晶石,9 个碎片 → 海晶砖。

全部受 GeneralConfig.addPrismarine 控制(init/Recipes.java:71)。

配置联动

BlockPrismarine 实现了 IConfigurable,其 isEnabled() 直接返回 GeneralConfig.addPrismarine(prismarine/block/BlockPrismarine.java:57-60),即关闭该配置后连已放置方块也会失效。

相关条目