跳到正文
烈焰甘蔗Wiki

Churn(搅乳器)

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

基本信息

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

属性 关闭态 开启态 来源
注册名 harvestcraft:churn harvestcraft:churnon BlockRegistry.java:647 / :648
构造参数 new BlockPamChurn(false) new BlockPamChurn(true) BlockRegistry.java:458 / :459
字段 pamChurn pamChurnon BlockRegistry.java:47 / :44
公共属性 值 来源
类 BlockPamChurn extends BlockContainer implements IFuelHandler BlockPamChurn.java:29-30
显示名 tile.churn.name / tile.churnon.name 均为 Churn en_US.lang:51-52
硬度 / 抗爆 1.5f / 10.0f BlockRegistry.java:458-459
TileEntity TileEntityChurn BlockPamChurn.java:40
GUI ID 6 BlockPamChurn.java:55
多方块 否,源码未定义任何多方块结构 —
朝向 放置时设 0–3 朝向 BlockPamChurn.java:78-83

槽位布局(TileEntityChurn.java:15,inventory = new ItemStack[3])

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

每槽堆叠上限 64。玩家背包 36 槽。

处理什么 / 产什么

配方表 ChurnRecipes。

配方条数(集合运算)

私有构造器位于 ChurnRecipes.java:19-34,其中只有 1 处注册调用:

  • ChurnRecipes.java:20 — this.addSmelting(ItemRegistry.freshmilkItem, new ItemStack(ItemRegistry.butterItem), 0.1f),即 鲜奶 → 黄油。

必须排除的干扰项::28 与 :32 虽同为 this.addSmelting(...) / this.addSmeltingRecipe(...) 字面调用,但它们分别是 addSmeltingRecipeForBlock 与 addSmeltingRecipe 两个私有辅助方法的方法体,不是配方注册点。另 :41 与 :57 的 for (Map.Entry …) 是读取循环。

无枚举/循环注册,故 Churn 配方总数 = 1。与随包文档 HarvestCraft 1.7.10Lb Recipes.txt 的 //CHURN RECIPES 段落(1 条)一致。

处理耗时 / 速率

参数 值 来源
烹饪判定 churnCookTime == 200 → 200 tick = 10 秒 TileEntityChurn.java:192
每 tick 燃料消耗 -1 TileEntityChurn.java func_145845_h
进度条分母 200,GUI 传 24 → 可填满 GuiChurn.java:43
多物品同时处理 有(可容纳物品数 > 1 时每次同时烤 2 个) TileEntityChurn.java func_145845_h

Churn 比 Oven 慢一倍(200 vs 100 tick)。

耗什么(燃料)

  • 专属燃料:盐——依次匹配 dustSalt(:55)、itemSalt(:56)、foodSalt(:57)三个矿辞典名称,盐本身烧 1600 tick(TileEntityChurn.java:40)。
  • 通用燃料:GameRegistry.getFuelValue(stack)(TileEntityChurn.java:42)。
  • 本类实现 IFuelHandler(TileEntityChurn.java:22),getFuelTime 只做上表判定,不额外注册燃料值。

交互

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

源码缺陷

  • 进度条与完成阈值一致(200/200),无 Oven 那样的半格 bug。
  • 多方块 / 控制器 / 可否旋转:源码未定义。
  • 矿辞典三名称回退(dustSalt/itemSalt/foodSalt)意味着与其它模组盐物品互通,但也意味着普通矿辞典盐无法点燃搅乳器——只有这 3 个具名物品行。

相关条目

订正记录

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