木板方块(Planks)
Chisel 为 22 种木板各注册一个独立可雕刻方块,分 3 个枚举常量:原版 6 种、Biomes O’ Plenty 14 种、Thaumcraft 2 种。所有木板共享同一套 14 个变体纹样,只是贴图目录前缀不同。
基本信息
| 属性 | 值 |
|---|---|
| 注册名模式 | chisel:<木种>_planks(n.replace('-', '_') + "_planks") |
| 类 | team.chisel.block.BlockCarvable |
| 材质 | Material.wood |
| 硬度 | 2.0F |
| 爆炸抗性 | 5.0F |
| 声音 | Block.soundTypeWood |
| 创意标签 | ChiselTabs.tabWoodChiselBlocks |
| 开采等级 | planks[i].setHarvestLevel("axe", 0) —— 只能用斧 |
| 可燃性 | Blocks.fire.setFireInfo(planks[i], 5, 20) —— 蔓延 5 / 烧毁 20 |
| 声音事件 | Carving.chisel.setVariationSound(name, "chisel:chisel.wood") |
| 雕刻组 | 每种木板自成一组(组名 = 注册名),且并入原版 Blocks.planks 的对应 metadata |
三组枚举常量
| 枚举常量 | 依赖 mod | 木种数 | 数组字段 |
|---|---|---|---|
WOOD |
无 | 6 | ChiselBlocks.planks[6] |
WOOD_BOP |
BiomesOPlenty(hasRequiredMod() 探测) |
14 | ChiselBlocks.planks_bop[14] |
WOOD_THAUMCRAFT |
Thaumcraft |
2 | ChiselBlocks.planks_tc[2] |
注册名
| 常量 | 注册名 |
|---|---|
WOOD |
chisel:oak_planks、chisel:spruce_planks、chisel:birch_planks、chisel:jungle_planks、chisel:acacia_planks、chisel:dark_oak_planks |
WOOD_BOP |
chisel:sacredoak_planks、cherry_planks、dark_planks、fir_planks、ethereal_planks、magic_planks、mangrove_planks、palm_planks、redwood_planks、willow_planks、pine_planks、hellbark_planks、jacaranda_planks、mahogany_planks |
WOOD_THAUMCRAFT |
chisel:greatwood_planks、chisel:silverwood_planks |
dark-oak 里的连字符被 replace('-', '_') 换成下划线 ⇒ dark_oak_planks。
WOOD_BOP的木种表是{ "sacredoak", "cherry", "dark", "fir", "ethereal", "magic", "mangrove", "palm", "redwood", "willow", "pine", "hellbark", "jacaranda", "mahogany" }(Features.javaWOOD_BOP),与 StorageDrawers 的 BiomesOPlenty 材质包清单不同(那边少pine前的空位)——两个 mod 各自维护,不要混用。
变体
每种木板都注册同样 14 个变体(metadata 1–14,没有 metadata 0),纹样目录前缀 planks-<木种>/:
| metadata | 纹样名 | 说明 |
|---|---|---|
| 1 | clean |
干净木板 |
| 2 | short |
短板 |
| 3 | vertical |
竖纹 |
| 4 | vertical-uneven |
不均匀竖纹 |
| 5 | parquet |
拼花 |
| 6 | fancy |
花纹板 |
| 7 | blinds |
百叶 |
| 8 | panel-nails |
钉板 |
| 9 | double |
双层 |
| 10 | crate |
板条箱 |
| 11 | crate-fancy |
花板条箱 |
| 12 | crateex |
扩展板条箱 |
| 13 | large |
大板 |
| 14 | chaotic-hor |
横向乱纹 |
| 15 | chaotic |
无序乱纹 |
源码里
addVariation调用了 14 次,metadata 依次为 1,2,6,8,9,10,11,13,3,4,5,7,12,14,15 —— 共 15 个 metadata(1–15 全部占满),0留给组内的原版木板。
与原版木板的关系
每个枚举常量在 registerAll 之后都执行:
Carving.chisel.addVariation(name, Blocks.planks, i, 0);
即 minecraft:planks 的 metadata i 被加进组 name 的 order 0 位。所以用雕刻刀左键原版木板,可以在原版贴图与 15 个 Chisel 贴图之间循环——不需要先做出 chisel:*_planks 方块。
WOOD 的 i 对应原版 metadata 0–5(橡木/云杉/白桦/丛林/金合欢/深色橡木);WOOD_BOP / WOOD_THAUMCRAFT 的 i 对应同一个 minecraft:planks 数组的下标,但这些下标并不对应真实存在的 BOP / TC 木板,因此它们的组里没有 order 0 的原版方块,只能靠整合包其它来源拿到第 0 号。
数值
| 属性 | 值 | 来源 |
|---|---|---|
| 注册方块数 | 22(6 + 14 + 2) | 逐常量统计 |
| 每块变体数 | 15(metadata 1–15) | carverHelper.addVariation 计数 |
| 变体总数 | 22 × 15 = 330 | — |
| 合成配方 | 无——WOOD / WOOD_BOP / WOOD_THAUMCRAFT 三个枚举常量都没有 addRecipes() 覆写 |
花括号配对解析 Features.java |
| 冶炼产物 | Carving.chisel.registerOre(name, "wood") ⇒ 全部 22 个方块注册进 OreDict 的 wood |
各枚举常量末行 |
交互
| 触发 | 行为 |
|---|---|
| 左键雕刻刀点击原版木板 | 直接在原版 + 15 个 Chisel 变体间循环(组内 order 0 是原版) |
| 用斧开采 | setHarvestLevel("axe", 0),其它工具不掉落 |
| 火烧 | 蔓延 5 / 烧毁 20 |
| 合成 | Chisel 无配方;需整合包其它 mod 提供 |
相关条目
- Chisel - 雕刻工具
- Snakestone - 另一个与
minecraft:方块合并成组的雕刻方块