Ztones 适配方块汇总

基本信息

属性 值
来源 mod Ztones(com.riciJak.Ztones)
注册方 ChiselTones(tehnut.chiseltones.ChiselTones)
导入语句 import static com.riciJak.Ztones.init.ModBlocks.*;
行为 把 Ztones 方块作为 Chisel 变体(variation)添加
注册 API CarvingUtils.chisel.addVariation(groupName, block, meta, order)

功能

本条目汇总 ChiselTones 把哪些 Ztones 方块注册到了 Chisel。ChiselTones 本身不注册任何 Block / Item / TileEntity,全部方块引用都来自 Ztones 的 ModBlocks 静态字段。

源码 ChiselTones#addVariations() 在两种模式下分别使用不同字段,详见 Variation Addition Type。

涉及方块清单

下表列出所有在源码中出现的 Ztones 方块引用(顺序与 addVariations() 中的注册顺序一致)。方块的注册名、属性、纹理等原始信息属于 Ztones mod,本条目不重复,仅记录"是否被 ChiselTones 注册"。

Ztones 字段 显示类型 模式 0 组 模式 0 order 模式 1 组 模式 1 maxMeta 是否受 config 控制
stoneTile BaseTile BaseTile 1 — — 是(始终开启)
agonBlock Agon BaseTile 2 Agon 15 enableAgon
bittBlock Bitt BaseTile 3 Bitt 15 enableBitt
crayBlock Cray BaseTile 4 Cray 15 enableCray
fortBlock Fort BaseTile 5 Fort 15 enableFort
iszmBlock Iszm BaseTile 6 Iszm 15 enableIszm
jeltBlock Jelt BaseTile 7 Jelt 15 enableJelt
korpBlock Korp BaseTile 8 Korp 15 enableKorp
krypBlock Kryp BaseTile 9 Kryp 15 enableKryp
lairBlock Lair BaseTile 10 Lair 15 enableLair
laveBlock Lave BaseTile 11 Lave 15 enableLave
mintBlock Mint BaseTile 12 Mint 15 enableMint
mystBlock Myst BaseTile 13 Myst 15 enableMyst
redsBlock Reds BaseTile 14 Reds 15 enableReds
roenBlock Roen BaseTile 15 Roen 15 enableRoen
solsBlock Sols BaseTile 16 Sols 15 enableSols
tankBlock Tank BaseTile 17 Tank 15 enableTank
vectBlock Vect BaseTile 18 Vect 15 enableVect
venaBlock Vena BaseTile 19 Vena 15 enableVena
zechBlock Zech BaseTile 20 Zech 15 enableZech
zionBlock Zion BaseTile 21 Zion 15 enableZion
zomeBlock Zome BaseTile 22 Zome 15 enableZome
zoneBlock Zone BaseTile 23 Zone 15 enableZone
zorgBlock Zorg BaseTile 24 Zorg 15 enableZorg
reedBlock Reed BaseTile 25 Reed 15 enableReed
syncBlock Sync BaseTile 26 Sync 15 enableSync
zkulBlock Zkul BaseTile 27 Zkul 15 enableZkul
azurBlock Azur BaseTile 28 Azur 15 enableAzur
zetaBlock Zeta BaseTile 29 Zeta 15 enableZeta
zestBlock Zest BaseTile 30 Zest 15 enableZest
zoeaBlock Zoea BaseTile 31 Zoea 15 enableZoea
zaneBlock Zane BaseTile 32 Zane 15 enableZane
zythBlock Zyth BaseTile 33 Zyth 15 enableZyth
ztylBlock Ztyl BaseTile 34 Ztyl 15 是(始终开启)

模式对比

模式 0(默认 — BaseTile 合并模式)

  • Chisel 雕刻组:1 个 "BaseTile"
  • 变体总数:33(每个 Ztones 方块一个 meta=0 变体)
  • 注册顺序:上表 “模式 0 order” 列(1–34 连续)
  • 循环行为:玩家在 BaseTile 内循环时,meta 始终为 0,等价于跨类型切换 Ztones 方块

模式 1(类型内循环模式)

  • Chisel 雕刻组:27 个(每个衍生 Ztones 方块一个组;stoneTile 在模式 1 下未注册)
  • 每个组的变体数:16(meta = 0..15 全部注册)
  • 循环行为:玩家只能在同类型 Ztones 方块内部循环 16 种 meta 变体
  • stoneTile 不参与模式 1(模式 1 的循环中 addVariationFast 调用以 agonBlock 为起点)

模式开关与 enableXxx 配置

源码 import 中除了方块字段之外,还使用了 Ztones 的 enableAgon/enableBitt/… 等配置布尔变量;这些开关直接传给 addVariationFast(...) / addVariationWithoutMeta(...) 的最后一个参数 config,为 false 时跳过该方块的注册。

注意:本 mod 不定义也不读取 enableXxx 这些开关(它们是 Ztones 配置类的字段,存在于 Ztones jar 中);ChiselTones 只是把 Ztones 的现有配置"转发"给 Chisel 注册逻辑。

stoneTile(order 1)和 ztylBlock(order 34 / 模式 1 的最后一组)始终为 true,不受任何配置控制。

注册实现(来自 ChiselTones.java)

private static void addVariationFast(String groupName, Block block, int maxMeta, boolean config) {
    if (config)
        for (int meta = 0; meta <= maxMeta; meta++)
            CarvingUtils.chisel.addVariation(groupName, block, meta, meta);
}

private static void addVariationWithoutMeta(String groupName, Block block, int order, boolean config) {
    if (config) CarvingUtils.chisel.addVariation(groupName, block, 0, order);
}

两个私有辅助方法均在 FMLInitializationEvent 阶段被 addVariations() 调用,模式 0 使用后者 33 次,模式 1 使用前者 27 次。

相关条目