MCBBS Wiki欢迎您共同参与编辑!在参与编辑之前请先阅读Wiki方针。
如果在编辑的过程中遇到了什么问题,可以去讨论板提问。
为了您能够无阻碍地参与编辑 未验证/绑定过邮箱的用户,请尽快绑定/验证。
MCBBS Wiki GitHub群组已上线!
您可以在回声洞中发表吐槽!
服务器状态监控。点击进入
本站由MCBBS用户自行搭建,与MCBBS及东银河系漫游指南(北京)科技有限公司没有从属关系。点此了解 MCBBS Wiki 不是什么>>
ModularMachinery Wiki(ZH)/配方排序:修订间差异
小 (trfix) |
小 (// Edit via Wikiplus) |
||
第1行: | 第1行: | ||
你也许想给一台机械添加一个配方 。比如输入 1 coal + energy 输出 1 iron. 现在你想提高一下玩家的游戏体验,你就可以定义一个输入1 coal+ 1 bucket of lava + energy 输出4 iron的配方。 |
你也许想给一台机械添加一个配方 。比如输入 1 coal + energy 输出 1 iron. 现在你想提高一下玩家的游戏体验,你就可以定义一个输入1 coal+ 1 bucket of lava + energy 输出4 iron的配方。 |
||
但是这么整会出大问题如果玩家提供的泛输入物品是 coal + lava + energy, 那么机械就只会先检查 1 coal + energy => 1 iron 作为配方,当输入物品满足此配方时只会输出1 iron且不会将lava作为输入物品使用,也就是说配方之间会产生冲突。 |
但是这么整会出大问题如果玩家提供的泛输入物品是 coal + lava + energy, 那么机械就只会先检查 1 coal + energy => 1 iron 作为运行配方,当输入物品满足此配方时只会输出1 iron且不会将lava作为输入物品使用,也就是说配方之间会产生冲突。 |
||
一般情况下,mod会根据配方需要的输入物品的数量和类型对配方进行排序。所以在上面描述的配方匹配失败一般不会发生,如果你碰到了上面描述的问题,我建议你去买彩票。 |
一般情况下,mod会根据配方需要的输入物品的数量和类型对配方进行排序。所以在上面描述的配方匹配失败一般不会发生,如果你碰到了上面描述的问题,我建议你去买彩票。 |
||
所以我们应该动动脑子想一下怎么避免这样的情况 |
所以我们应该动动脑子想一下怎么避免这样的情况。我们都知道优先级这个东西,那么给配方定义优先级就是。这样,你就可以"告诉"mod哪些配方优先检查,哪些后检查. (JEI的配方预览显示顺序也会被改变!) |
||
优先级数字越大,检查顺序越靠前。 |
|||
样例: |
样例: |
||
第19行: | 第21行: | ||
</syntaxhighlight> |
</syntaxhighlight> |
||
"priority"即为优先级(只接受整数型数字),如果不定义优先级那么"priority"为0. |
"priority"即为优先级(只接受整数型数字),如果不定义优先级那么"priority"为0. |
||
CraftTweaker中优先级如此配置: |
|||
<syntaxhighlight lang="Java"> |
|||
mods.modularmachinery.RecipeBuilder.newBuilder(String 配方注册名, String 机械注册名, int 运行Tick数, int 优先级); |
|||
</syntaxhighlight> |
|||
Tr:[[Eicy]] |
Tr:[[Eicy]] |
2022年5月27日 (五) 19:07的版本
你也许想给一台机械添加一个配方 。比如输入 1 coal + energy 输出 1 iron. 现在你想提高一下玩家的游戏体验,你就可以定义一个输入1 coal+ 1 bucket of lava + energy 输出4 iron的配方。
但是这么整会出大问题如果玩家提供的泛输入物品是 coal + lava + energy, 那么机械就只会先检查 1 coal + energy => 1 iron 作为运行配方,当输入物品满足此配方时只会输出1 iron且不会将lava作为输入物品使用,也就是说配方之间会产生冲突。
一般情况下,mod会根据配方需要的输入物品的数量和类型对配方进行排序。所以在上面描述的配方匹配失败一般不会发生,如果你碰到了上面描述的问题,我建议你去买彩票。
所以我们应该动动脑子想一下怎么避免这样的情况。我们都知道优先级这个东西,那么给配方定义优先级就是。这样,你就可以"告诉"mod哪些配方优先检查,哪些后检查. (JEI的配方预览显示顺序也会被改变!)
优先级数字越大,检查顺序越靠前。
样例:
[...]
"machine": "...",
"registryName": "...",
"recipeTime": 20,
"priority": 2,
"requirements": [
[...]
"priority"即为优先级(只接受整数型数字),如果不定义优先级那么"priority"为0.
CraftTweaker中优先级如此配置:
mods.modularmachinery.RecipeBuilder.newBuilder(String 配方注册名, String 机械注册名, int 运行Tick数, int 优先级);
Tr:Eicy