跳到正文
烈焰甘蔗Wiki

Granite, Diorite, Andesite Generation

Chisel 1.8+ 添加的花岗岩、闪长岩、安山岩矿脉生成。

生成器

GeneratorChisel 实现 IWorldGenerator(GeneratorChisel.java:16), 单例 GeneratorChisel.INSTANCE,以权重 1000 注册 (Chisel.java:177)。每次 generate 回调遍历全部已注册矿脉(:60-66)。

生成参数

已订正:原文三项参数全部错误。

参数 原文 正确值 证据
脉大小 count 未提及 32 Chisel.java:174-176 传 32 作为 addFeature 第 2 参
Y 范围 40-128 40 - 100 Chisel.java:174-176 显式传 40, 100
每区块尝试次数 amount 1 8 Configurations.andesiteAmount 默认 8(Configurations.java:138-140)
触发概率 chance 1 (100%) 0.5 (50%) Chisel.java:174-176 末位传 0.5

Y 范围 128 是 GeneratorChisel 的默认值(addFeature 3 参重载 addFeature(block, count, amount, 40, 128),GeneratorChisel.java:33-35), 但三种石头岩都走了 5 参重载(Chisel.java:190-199 的 data.length == 4 分支), 显式覆盖为 40-100 / chance 0.5。原文直接套用了默认值。

三种石头共用同一套参数(Chisel.java:174-176):

addWorldgen(Features.ANDESITE, ChiselBlocks.andesite, Configurations.andesiteAmount, 40, 100, 0.5);
addWorldgen(Features.GRANITE,  ChiselBlocks.granite,  Configurations.graniteAmount,  40, 100, 0.5);
addWorldgen(Features.DIORITE,  ChiselBlocks.diorite,  Configurations.dioriteAmount,  40, 100, 0.5);

生成的方块

方块 ChiselBlocks 引用 变体组
chisel:granite ChiselBlocks.granite granite
chisel:diorite ChiselBlocks.diorite diorite
chisel:andesite ChiselBlocks.andesite andesite

三者均无 requiredMod、无父 Feature(Features.java:194、:1025、:1635), 因此 Features.enabled() 恒为真(只受 Configurations.featureEnabled 影响), 生成一定会注册。

注册方式

GeneratorChisel.addFeature(block, count, amount, minY, maxY, chance) 把 new WorldGenMinable(block, count) 存入 Map<WorldGenMinable, WorldGenInfo> (GeneratorChisel.java:39-42)。

genStandardOre 的执行逻辑(GeneratorChisel.java:44-53): 每区块对每种矿脉循环 amount 次,每次以 random.nextDouble() < chance 判定是否生成, Y 坐标为 minY + random.nextInt(maxY - minY) + 1。

用途

这些方块为玩家提供装饰性石材选项,可通过雕刻刀在各自的组内替换变体。 注意三者是三个独立组(Features.java:1658、:1049、:216), chisel:granite 与 chisel:andesite 之间不能互相雕刻替换。

浏览全部模组