Rust 腐蚀插件简单操作解决依赖问题

我的 Rust 服务器有两个插件一直有冲突,就是 InstantCraft 瞬间合成插件和 HuntRPG 技能插件有冲突,因为技能插件有个技能是允许你加快物品合成速度,但是因为我已经有瞬间合成插件了,所以两个插件就会冲突报错。

其实解决方案也很简单,就是启动服务器后重载 HuntRPG 插件就行了,因为这样的话就会取消注册 HuntRPG 对于合成物品的 Hooks,然后让 InstantCraft 接管合成事件。但是每次都要自己手动执行一次 o.reload HuntRPG 就很麻烦,有没有办法让它自动完成呢?

刚开始我上网查了一下,有人说把 InstantCraft 加入到 HuntRPG 的依赖项里面,就可以让 InstantCraft 优先于 HuntRPG 加载,但是我试了一下这个方法并没有效果,由于命名问题(H 优先于 I),HuntRPG 还是会提前加载。

后来我又想到了一个以前在 Minecraft 服务器里常用的方法,就是在 InstantCraft 的 Init 方法里面,通过调用服务器命令实现重载 HuntRPG,然后就可以完美解决这个问题了,代码如下:

#region Oxide Hooks
private void Init()
{
    ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), "o.reload HuntRPG");
    permission.RegisterPermission(permUse, this);
}

完美,现在不会报错了。

推荐阅读文章

1 条评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注