问题背景
逛 MCBBS 看到一篇提问帖(https://www.mcbbs.net/thread-1200970-1-1.html),才发现好像没人写过具体的解决方法,特此记录。
问题描述
Quark 添加了一系列界面按钮,方便玩家对容器进行快速IO、物品整理、高亮搜索等操作。
原版箱子看上去自然没有问题,但其他 mod 的界面就有可能出现各种奇妙的排版错乱问题,以 Traveler's Backpack(旅行者背包)为例。
最简单暴力的方法,打开 Quark 配置界面,定位相关的配置项,改为 false 即可禁用这些按钮。但这种配置是全局性的,所有界面都会失去这些有用的按钮。
因此,如何禁用 Quark 按钮在指定界面中的显示?
解决方法
实际上,V姐早就想到了这一问题,并提供了专门的一项配置。
在游戏内配置界面位于这个位置。
这个配置项专门用于设置界面黑名单,指定哪些界面不显示 Quark 的按钮。不过需要填写界面的完整类名,涉及一丢丢 Java 开发知识,因此反倒劝退了普通玩家。
以 Traveler's Backpack(旅行者背包)为例,按照正常思路,我们需要先行获取 旅行者背包 界面的完整类名。最靠谱的做法就是找到这个 mod 的源码仓库,遵循“见名知义”原则,即便我们不参与这个 mod 的实际开发,也能快速定位目标类。对于那些没有开源的 mod,就只能向作者留言,说清楚来龙去脉。当然,更硬核一点的玩家直接上反编译,也不是不行。
所幸旅行者背包 mod 的作者有在 github 上开源,我们直接自己动手。依据上图,旅行者背包界面的完整类名就是
com.tiviacz.travelersbackpack.client.gui.TravelersBackpackScreen
注意:包名和类名中间的英文半角句点,不要漏了。
然后将完整类名填写到刚才的配置项当中,保存更改。
现在我们再分别打开箱子和旅行者背包,验收修改成果。
大功告成~
其他问题
如果修改没有奏效:
重启游戏
确认配置文件保存成功
确认界面的完整类名正确,包括是不是目标界面,以及拼写是否正确等
如果问题仍然存在,不要害羞,大胆提问吧~
第一次编写教程,欢迎斧正。