跳到正文
烈焰甘蔗Wiki

Quern(磨盘)

事实基准:harvestcraft-1.3.14-GTNH.jar(MC 1.7.10 / Forge 10.13.4.1614)CFR 0.152 反编译源码。

基本信息

Quern 有两个注册名(关/开两种状态),共用同一个类。

属性 关闭态 开启态 来源
注册名 harvestcraft:quern harvestcraft:quernon BlockRegistry.java:649 / :650
构造参数 new BlockPamQuern(false) new BlockPamQuern(true) BlockRegistry.java:460 / :461
字段 pamQuern pamQuernon BlockRegistry.java:48 / :44
公共属性 值 来源
类 BlockPamQuern extends BlockContainer implements IFuelHandler BlockPamQuern.java:29-30
显示名 tile.quern.name / tile.quernon.name 均为 Quern en_US.lang:53-54
硬度 / 抗爆 1.5f / 10.0f BlockRegistry.java:460-461
TileEntity TileEntityQuern BlockPamQuern.java:40
GUI ID 7 BlockPamQuern.java:55
多方块 否,源码未定义任何多方块结构 —
朝向 放置时设 0–3 朝向 BlockPamQuern.java:78-83

槽位布局(TileEntityQuern.java:32,quernItemStacks = new ItemStack[3])

槽位 内容 容器槽(ContainerQuern.java:32-35)
0 待加工原料 GUI (80,17)
1 燃料 GUI (80,53)
2 成品(结果槽,只可取出) GUI (80,35)

玩家背包 36 槽。

处理什么 / 产什么

配方表 QuernRecipes。

配方条数 = 11(集合运算)

私有构造器 QuernRecipes.java:19-35 内共 11 处注册调用,无任何枚举/循环注册:

# 行 原料 → 产物
1 :21 Items.field_151015_O → 面粉 flourItem
2 :22 Items.field_151174_bG → 面粉 flourItem
3 :23 riceItem → 面粉 flourItem
4 :24 barleyItem → 面粉 flourItem
5 :25 oatsItem → 面粉 flourItem
6 :26 ryeItem → 面粉 flourItem
7 :27 new ItemStack(Items.field_151100_aR, 0, 3) → 可可粉 cocoapowderItem
8 :28 cinnamonItem → 磨碎肉桂 groundcinnamonItem
9 :29 nutmegItem → 磨碎肉豆蔻 groundnutmegItem
10 :30 peppercornItem → 黑胡椒 blackpepperItem
11 :31 curryleafItem → 咖喱粉 currypowderItem

必须排除的干扰项::39 与 :43 是两个私有辅助方法(addSmeltingRecipeForBlock / addSmeltingRecipe)的方法体,不是配方点;:52 与 :68 的 for (Map.Entry …) 是读取循环。

11 条与随包文档 HarvestCraft 1.7.10Lb Recipes.txt 的 //QUERN RECIPES 段落(6 条谷物→面粉 + 可可 + 4 条香料)吻合。

处理耗时 / 速率

参数 值 来源
烹饪判定 quernCookTime == 200 → 200 tick = 10 秒 TileEntityQuern.java:181
每 tick 燃料消耗 -1 TileEntityQuern.java func_145845_h
进度条分母 200,GUI 传 24 → 可填满 GuiQuern.java:43
多物品同时处理 有 TileEntityQuern.java func_145845_h

Quern 与 Churn 同为 200 tick,比 Oven 的 100 tick 慢一倍。

耗什么(燃料)

  • 专属燃料:代码判据是 Item.func_150898_a((Block)Blocks.field_150456_au)(TileEntityQuern.java:40),命中返回 1600 tick(:41)。
    • Blocks.field_150456_au 是未反混淆的 SRG 名。本仓库内无 Minecraft 源码与 MCP 映射,无法从源码直接确定它是哪个原版方块,此处不做断言。
    • 随包文档 HarvestCraft 1.7.10Lb Recipes.txt 在 //Quern Block 段落写明 Fuel Item: Stone Pressure Plates(石质压力板),与「一个原版方块、燃烧值 1600」这一形态自洽,可作为参考但不构成源码级证明。
  • 通用燃料:GameRegistry.getFuelValue(stack)(TileEntityQuern.java:43)。
  • 本类实现 IFuelHandler(TileEntityQuern.java:23)。

交互

触发 行为 来源
右键 openGui(..., 7, ...) BlockPamQuern.java:55
放置 设 0–3 朝向 BlockPamQuern.java:78-83
破坏 掉落 Item.func_150898_a(BlockRegistry.pamQuern) —— 注意是关闭态方块 BlockPamQuern.java:59-61

源码缺陷

  • 无多方块、无控制器、可否旋转:源码未定义(BlockPamQuern.java 无结构判定代码)。
  • 唯一可疑点即上文 SRG 名未解析——这是反编译环境的局限,不是 mod 的缺陷,不应记为源码缺陷。

相关条目

订正记录

  • 本条目为新增。旧版 1.12.2 fork 的类名与行号不适用于 1.7.10,已作废。
浏览全部模组