Corn(可食用作物)
事实基准:
harvestcraft-1.3.14-GTNH.jar(MC 1.7.10 / Forge 10.13.4.1614)CFR 0.152 反编译源码。
基本信息
| 属性 | 值 | 来源 |
|---|---|---|
| 注册名 | harvestcraft:cornItem |
ItemRegistry.java:1905 |
| 显示名 | Corn |
en_US.lang:361 |
| Java 类 | ItemPamSeedFood |
ItemRegistry.java:1049 |
| 字段 | ItemRegistry.cornItem |
ItemRegistry.java 字段声明 |
| 创造标签 | tabHarvestCraft2(HarvestCraft Crops) |
ItemRegistry.java:1049 |
| 条件注册 | 否,无条件注册 | ItemRegistry.java:1905 |
| 属性 | 值 | 来源 |
|---|---|---|
| 最大堆叠 | 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.pamcornCrop | pamcornCrop |
ItemRegistry.java:1049 |
| 要求土壤方块 | field_150458_ak |
ItemRegistry.java:1049 |
种植行为(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)。
关联的种子物品
- 种子:cornseedItem
- 反向配方:cornseedItem 无序合成 1 个本物品(
PamFoodRecipes.java:38-40的PamCropItems[i] → PamSeeds[i]循环,受配置enablecroptoseedRecipe门控,默认true)
获取方式(源码中登记的配方)
烤箱(Oven)
| 来源 | 配方 |
|---|---|
OvenRecipes.java:42 |
作为原料被加工为:popcornItem |
作为材料被使用
下列合成台配方把本物品列为材料。分两类:经矿词典名匹配的,与把本物品以 Item 实例直接引用的。两者都是集合关系,已按 (来源, 产物) 去重。
经矿词典名匹配
| 来源 | 产物 | 命中的矿词典名 | 同一配方中的其它矿词典材料 |
|---|---|---|---|
PamFoodRecipes.java:186 |
stockItem |
listAllveggie |
烹饪锅(toolPot) |
PamFoodRecipes.java:223 |
cornonthecobItem |
cropCorn |
foodButter |
PamFoodRecipes.java:224 |
cornmealItem |
cropCorn |
臼与杵(toolMortarandpestle) |
PamFoodRecipes.java:230 |
creamedcornItem |
cropCorn |
cropOnion、foodHeavycream、深锅(toolSaucepan) |
PamFoodRecipes.java:368 |
zucchinibakeItem |
cropCorn |
cropTomato、cropZucchini、foodCheese、foodToast、烤盘(toolBakeware) |
PamFoodRecipes.java:490 |
mixedsaladItem |
listAllveggie |
foodSaladdressing、砧板(toolCuttingboard) |
PamFoodRecipes.java:500 |
gardensoupItem |
listAllveggie |
foodStock、烹饪锅(toolPot) |
PamFoodRecipes.java:684 |
cornflakesItem |
cropCorn |
listAllmilk、搅拌盆(toolMixingbowl) |
PamFoodRecipes.java:732 |
veggiestripsItem |
listAllveggie |
foodSalt、listAllspice、烤盘(toolBakeware) |
PamFoodRecipes.java:763 |
tunapotatoItem |
cropCorn |
foodButteredpotato、listAllfishcooked、砧板(toolCuttingboard) |
PamOtherRecipes.java:147 |
veggiebaitItem |
listAllveggie |
— |
矿词典(OreDictionary)
本物品注册进以下矿词典名。注意方向:注册进矿词典只代表本物品可被当作这些名字的材料使用,不代表它拥有这些名字对应的其他物品。
| 矿词典名 | 注册位置 |
|---|---|
cropCorn |
PamFoodOreDictionaryRegistry.java:371 |
listAllveggie |
PamFoodOreDictionaryRegistry.java:372 |
源码缺陷
getPlantMetadata恒返回 0(ItemPamSeedFood.java:79-81),所有ItemPamSeedFood作物只使用 meta 0。- 构造函数签名收了
int amount, float saturation, boolean isWolfFood, …四个语义参数,但实际只用了前两个,isWolfFood在:25被替换成字面量false—— 调用方无法通过构造参数改变它。
相关条目
- 家族汇总:Pam Seed Food