crudeOilStill

基本信息

属性 值
注册名 crudeOilStill
本地名 crudeOilStill
方块类 BlockFluidGC
ItemBlock ItemBlockGC
所属 modid GalacticraftCore
注册变量 GCBlocks.crudeOil / crudeOil
构造 core/GalacticraftCore.java:446 — new BlockFluidGC(fluidOil, "oil")
注册名来源 core/GalacticraftCore.java:448 — GCBlocks.crudeOil.setBlockName("crudeOilStill")
注册 core/GalacticraftCore.java:449
源码 micdoodle8/mods/galacticraft/core/GalacticraftCore.java

说明

⚠️ 这是一个「不在 GCBlocks.java 里」的注册。 GCBlocks.registerBlocks()(GCBlocks.java:316-445)里没有它; GCBlocks.crudeOil 的构造、命名、注册全在 core/GalacticraftCore.java:445-451:

if (fluidOil.getBlock() == null) {
    GCBlocks.crudeOil = new BlockFluidGC(fluidOil, "oil");
    ((BlockFluidGC) GCBlocks.crudeOil).setQuantaPerBlock(3);
    GCBlocks.crudeOil.setBlockName("crudeOilStill");
    GameRegistry.registerBlock(GCBlocks.crudeOil, ItemBlockGC.class, GCBlocks.crudeOil.getUnlocalizedName());
    fluidOil.setBlock(GCBlocks.crudeOil);
} else {
    GCBlocks.crudeOil = fluidOil.getBlock();
}

条件门控:整个分支包在 if (fluidOil.getBlock() == null) 里。 若 BuildCraft(或别的 mod)已注册了同名流体,GC 不注册这个方块, 而是直接 GCBlocks.crudeOil = fluidOil.getBlock() 借用对方的方块实例—— 此时 crudeOil 变量非空但不由 GC 注册。

setQuantaPerBlock(3)(:447):每方块 3 单位量,是 BuildCraft 式的放大系数。

对应的桶是 bucketOil,注册在 GalacticraftCore.java:456-458, 同样带 BuildCraft Energy 门控(Item.itemRegistry.getObject("buildcraftenergy:items/bucketOil") == null)。

相关条目