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)。
相关条目
- bucketOil 物品
- fuel 流体方块
- Galacticraft 分类页 - 2 个 modid、4 个维度的总览与注册真源