Compressed Salt(压缩盐块)
事实基准:
harvestcraft-1.3.14-GTNH.jar(MC 1.7.10 / Forge 10.13.4.1614)CFR 0.152 反编译源码。
⚠ 注册名拼写错误(本条目最需要注意的事实)
本方块的注册名与未本地化名不一致:
| 项目 | 值 | 来源 |
|---|---|---|
注册名(GameRegistry.registerBlock 第三个参数) |
spamcompressedsaltBlockalt |
BlockRegistry.java:654 |
未本地化名(func_149663_c) |
pamcompressedsaltBlock |
BlockRegistry.java:454 |
| 贴图名 | harvestcraft:pamcompressedsaltBlock |
BlockRegistry.java:454 |
| lang 键 | tile.pamcompressedsaltBlock.name = Compressed Salt Block |
en_US.lang:44 |
| 字段 | BlockRegistry.pamcompressedsaltBlock |
BlockRegistry.java:59 |
三处证据对照:
// BlockRegistry.java:454 —— 未本地化名是 "pamcompressedsaltBlock"
pamcompressedsaltBlock = new BlockPamSalt()...func_149663_c("pamcompressedsaltBlock")...
// BlockRegistry.java:654 —— 注册名却是 "spamcompressedsaltBlockalt"
GameRegistry.registerBlock(pamcompressedsaltBlock, ItemPamBlock.class, "spamcompressedsaltBlockalt");
"spamcompressedsaltBlockalt" 可拆为 s + pamcompressedsaltBlock + alt,是典型的复制粘贴粘贴事故(在 pam 前多敲了 s,结尾多敲了 alt)。
实际影响
- 不影响显示名。物品名走的是未本地化名 →
tile.pamcompressedsaltBlock.name,lang 键存在且正常(en_US.lang:44)。玩家看到的仍是Compressed Salt Block。 - 影响存档与命令。注册名是世界方块 ID 的一部分,因此:
/setblock与物品 ID 必须是harvestcraft:spamcompressedsaltBlockalt;- 老存档里若有人用正确拼写
/setblock过,会得到未知方块。 - 交叉引用、其它地图资源包按
pamcompressedsaltBlock查找也会失配。
本条目文件名取 kebab-case 的 compressed-salt(可读、与 pamcompressedsaltBlock 的意图一致),而不是注册名的直译 pamcompressedsaltblock。
基本信息
| 属性 | 值 | 来源 |
|---|---|---|
| 注册名 | harvestcraft:spamcompressedsaltBlockalt |
BlockRegistry.java:654 |
| 方块类 | BlockPamSalt extends BlockOre(与 Salt 同一个类) |
BlockPamSalt.java:15-16 |
| 字段 | BlockRegistry.pamcompressedsaltBlock |
BlockRegistry.java:59 |
| 构造 | new BlockPamSalt() |
BlockRegistry.java:454 |
| 硬度 / 爆炸抗性 | 1.5f / 10.0f |
BlockRegistry.java:454 |
| TileEntity / GUI | 均无 | — |
| 多方块 / 朝向 | 源码未定义 | — |
| 创造模式标签 | HarvestCraft.tabHarvestCraft |
BlockRegistry.java:454 |
掉落
| 属性 | 值 | 来源 |
|---|---|---|
| 掉落物 | 方块自身(Item.func_150898_a(BlockRegistry.pamcompressedsaltBlock)) |
BlockPamSalt.java:30 |
| 掉落数量 | 1 |
BlockPamSalt.java:19-24(this != pamSalt → 走 :23 的 return 1) |
| 经验 | 0 | BlockPamSalt.java:33-45(掉落物 == 方块自身 → :44 返回 0) |
即压缩盐块完全可回收,不会因误挖而损失盐。
配方
随包文档 HarvestCraft 1.7.10Lb Recipes.txt 的 //Compressed Salt Block 段落记录其合成配方(由 Salt 压制而成)。具体格数属配方分片,此处只确认方块身份与掉落行为。
源码缺陷
- 注册名拼写错误(见上):
BlockRegistry.java:654的"spamcompressedsaltBlockalt"应为"pamcompressedsaltBlock"。 BlockPamSalt用this == BlockRegistry.pamSalt区分两个方块的行为(BlockPamSalt.java:20,27,34),使一个类承担两种语义;这本身不是 bug,但也是拼写事故能长期潜伏而无人察觉的原因之一。- 同一文件另有不可达分支,见 Salt 条目的「冗余的三元表达式」。
相关条目
订正记录
- 本条目为新增。旧 wiki 无本条目。注册名拼写差异为实测复核结果,行号已按
harvestcraft-1.7.10-GTNH反编译源码核对。