跳到正文
烈焰甘蔗Wiki

Cantaloupe(可食用作物)

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

基本信息

属性 值 来源
注册名 harvestcraft:cantaloupeItem ItemRegistry.java:1901
显示名 Cantaloupe en_US.lang:354
Java 类 ItemPamSeedFood ItemRegistry.java:1051
字段 ItemRegistry.cantaloupeItem ItemRegistry.java 字段声明
创造标签 tabHarvestCraft2(HarvestCraft Crops) ItemRegistry.java:1051
条件注册 否,无条件注册 ItemRegistry.java:1901
属性 值 来源
最大堆叠 64(未覆写,Item 默认) ItemPamSeedFood 未调用 func_77625_d
耐久度 无 无 setMaxDamage 调用
可食用 是 —— 继承 ItemFood ItemPamSeedFood.java:19
饥饿值恢复 cropfoodRestore(配置项 cropfoodRestore,默认 1) ItemRegistry.java:912(配置默认值)
饱和度 config.cropsaturationRestore(默认 0.6) ItemRegistry.java:913
狼食物(isWolfFood) 恒为 false —— 构造器把它写死(ItemPamSeedFood.java:25) ItemPamSeedFood.java:25
可种植 是 —— 实现 IPlantable ItemPamSeedFood.java:20
种植出的方块 BlockRegistry.pamcantaloupeCrop | pamcantaloupeCrop ItemRegistry.java:1051
要求土壤方块 field_150458_ak ItemRegistry.java:1051

种植行为(ItemPamSeedFood.java:30-52)

  • EnumPlantType = Crop(ItemPamSeedFood.java:72 的默认值)
  • 总开关:配置 enablecropitemsasseeds,默认 true(ItemRegistry.java:923);关闭后右键完全不响应。
  • 必须点击方块的顶面(par7 != 1 直接 return false)。
  • 陆生分支:要求点击处是本物品的 soilId、且 y+1 可放置,作物种在 y+1(ItemPamSeedFood.java:44-48)。

关联的种子物品

  • 种子:cantaloupeseedItem
  • 反向配方:cantaloupeseedItem 无序合成 1 个本物品(PamFoodRecipes.java:38-40 的 PamCropItems[i] → PamSeeds[i] 循环,受配置 enablecroptoseedRecipe 门控,默认 true)

作为材料被使用

下列合成台配方把本物品列为材料。分两类:经矿词典名匹配的,与把本物品以 Item 实例直接引用的。两者都是集合关系,已按 (来源, 产物) 去重。

经矿词典名匹配

来源 产物 命中的矿词典名 同一配方中的其它矿词典材料
PamFoodRecipes.java:187 fruitsaladItem listAllfruit 砧板(toolCuttingboard)
PamFoodRecipes.java:385 fruitcrumbleItem listAllfruit foodButter、foodFlour、foodGroundcinnamon、烤盘(toolBakeware)
PamFoodRecipes.java:488 fruitpunchItem listAllfruit listAllsugar、榨汁机(toolJuicer)
PamFoodRecipes.java:665 mincepieItem listAllfruit foodButter、foodDough、listAllbeefcooked、listAllnut、烤盘(toolBakeware)
PamOtherRecipes.java:148 fruitbaitItem listAllfruit —

矿词典(OreDictionary)

本物品注册进以下矿词典名。注意方向:注册进矿词典只代表本物品可被当作这些名字的材料使用,不代表它拥有这些名字对应的其他物品。

矿词典名 注册位置
cropCantaloupe PamFoodOreDictionaryRegistry.java:359
listAllfruit PamFoodOreDictionaryRegistry.java:360

获取方式

**源码中没有任何配方、机器加工或熔炼把本物品列为产物。**这不是数据缺失,而是本 jar 的客观事实 —— 它的来源是下面这条路径:

来源 证据
收割 pamcantaloupeCrop 作物方块 | pamcantaloupeCrop BlockPamCrop.func_149650_a

补充:cantaloupeItem 可在 Market 购买(MarketItems 按 ItemRegistry.PamSeeds[] / 各分类数组批量登记)。

源码缺陷

  1. getPlantMetadata 恒返回 0(ItemPamSeedFood.java:79-81),所有 ItemPamSeedFood 作物只使用 meta 0。
  2. 构造函数签名收了 int amount, float saturation, boolean isWolfFood, … 四个语义参数,但实际只用了前两个,isWolfFood 在 :25 被替换成字面量 false —— 调用方无法通过构造参数改变它。

相关条目

浏览全部模组