Bukkit的Unsafe接口提供了loadAdvancement方法添加进度和removeAdvancement方法删除进度,添加进度的方法目前来说没有太大问题,但是删除进度的方法它只是将加载到数据包的文件删除,而服务器中依然存在这个进度。我查看Bukkit的API发现需要使用reloadData才能够删除进度,但是使用这个方法的话,会有一些问题:
因为它不是单纯的重载进度,而是会把数据包重新加载,其他插件添加的进度、配方、战利品表什么的都会被删除。Folia端不支持reloadData方法
所以我希望使用其他的办法来管理进度,让进度可以不需要reloadData或者重启就能重新加载
我一开始想使用nms,但是nms的进度相关代码没太看明白。
想要nms管理进度的相关教程,或者其他方法或者库可以做到这一点也是可以的。
因为它不是单纯的重载进度,而是会把数据包重新加载,其他插件添加的进度、配方、战利品表什么的都会被删除。Folia端不支持reloadData方法
所以我希望使用其他的办法来管理进度,让进度可以不需要reloadData或者重启就能重新加载
我一开始想使用nms,但是nms的进度相关代码没太看明白。
想要nms管理进度的相关教程,或者其他方法或者库可以做到这一点也是可以的。