
Scavenge
对任何方块应用自定义右键行为!
Scavenge 是一个模组,允许你为任意方块应用自定义的右键/左键行为。 除此之外,你还可以为这些行为添加 LootPool,当条件满足时会掉落这些战利品池。 这些内容从 JsonFile 加载,运作方式类似于脚本语言。
更重要的是,你可以在右键这些方块时添加某些独特的功能/条件。
例如:
- 玩家必须潜行,
- 玩家手中必须持有钻石
- 方块不可破坏
- 方块在使用 5 次后消失
- 等等。
教程:
如果你想要一个关于如何编写 Scavenge 脚本的优秀示例教程, Xaikii 制作了一个,可以在这里找到。
文档
文档现在是模组的一部分。 可以通过在配置部分设置 "printExamples" 并启动游戏来生成。 附属模组也应该支持这一点。 生成的文档将位于游戏文件夹中的 "scavenge_doc" 文件夹内。 文档按 Plugin -> TypeOfProperty -> PropertyName 排序。
这样做是为了简化查找文档的过程并保持其完整性。
导出脚本
Scavenge 支持导出游戏内已加载的脚本。 可以通过将 "dumpScripts" 设置为 true 来实现。 这样做是为了让调试更容易,因为现在可以看到哪些内容被加载了,哪些内容因为源脚本中的错误而被丢弃。 脚本导出会在 Scavenge 脚本重新加载后立即进行。 (所以不需要重启游戏)
数据包
如何添加 Scavenge 脚本:
Scavenge 现在支持数据包。它会自动加载 "datapacks/DATAPACK_NAME/data/DOMAIN/scavenge_scripts" 文件夹中的所有文件。 并会在资源包重新加载时自动重新加载它们。它们会自动同步到客户端,所以不再需要手动进行"服务器->客户端"同步。它是自动完成的。
由于该工具有一个 JEI 插件,我不得不安装一个 JEI hack,在脚本重新加载后 1 tick 重新加载 JEI,因为 JEI 不支持任何具有配方/数据自动同步功能的模组。(如果 JEI 不修复这个问题,这很快就会达到 2-3 位数的重新加载次数)
现在 ResourcePack 之外发生了变化的内容:
- 效果现在仅在服务器端执行,而条件会在服务器端和客户端同时检测。因此如果你存储未同步的数据,可能会出现不同步的情况。
- 数学运算/条件现在比以前更加严格,因为即使代码更大也提供了更多灵活性。
- 错误消息现在可以直接添加到条件中,因此不再需要单独的消息部分。对于效果,有一个 Message Effect。
- 条件现在默认可以被反转。(不能保证附属模组支持此功能)
- Scavenge 现在使用原版 LootPool,你可以直接将它们链接到 lootpool。它会尝试在 JEI 中显示它们,但对于更随机/复杂的战利品,准确性可能看起来不太好。
- 数学运算/条件现在支持位运算。
- 所有内容的示例都会生成。(同样不能保证附属模组支持此功能)
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。