配置项
基本信息
| 属性 | 值 |
|---|---|
| 配置类 | hellfirepvp.beebetteratbees.common.ModConfig |
| 配置文件 | config/beebetteratbees.cfg(由 FMLPreInitializationEvent#getSuggestedConfigurationFile 给出) |
| 分类 | 全部落在 general 分类下 |
| 配置项数量 | 2(均为 boolean) |
| 加载时机 | preInit(BeeBetterAtBees.java:41-43) |
全部配置项
| 配置键 | 映射字段 | 默认值 | 作用 |
|---|---|---|---|
general.shouldShowSecretMutations |
ModConfig.shouldShowSecretRecipes |
false |
为 true 时,NEI 配方面板会显示 Forestry 标记为 secret 的蜜蜂变异 |
general.shouldShowDuplicateTrees |
ModConfig.showDuplicateTrees |
true |
为 false 时,同一棵树已在别处显示过就不再重复渲染 |
两个字段都是 public static,preInit 里 ModConfig.init() → loadFromConfig() 直接覆写,
没有 setter,也不写回配置文件(ModConfig.save() 存在但全仓库无调用点)。
secret 变异的过滤点
shouldShowSecretRecipes 只在两处被读取,两处条件相同
(BBABGuiRecipeTreeHandler.java:97 和 :169):
if (!mutation.isSecret() || ModConfig.shouldShowSecretRecipes) {
this.arecipes.add(new CachedBeeMutationTree(mutation));
}
即合成(crafting)侧和用途(usage)侧都遵守该开关。
字段名与配置键不一致
shouldShowSecretRecipes(字段)对 shouldShowSecretMutations(配置键)——
两者拼写不同,读代码时不能按名字直接对上。
源码缺陷
ModConfig.java:18 把 showDuplicateTrees 的字段初始值写成 false,
而 ModConfig.java:41 里 config.getBoolean(..., true, ...) 的配置默认值是 true。
字段初始值是死代码——loadFromConfig() 在 init() 中必然执行并覆写它,
所以实际生效的默认值是 true。但这个矛盾会让只读字段声明的人得出相反结论。
相关条目
- NEI 配方树处理器 - 消费
shouldShowSecretRecipes的两处过滤 - 变异树布局与渲染 - 消费
showDuplicateTrees决定是否去重