######  在德国用心制作 (并附赠[啤酒](https://s.moep.tv/beer))
###### 
_你是否曾想为你的每个世界设置不同的服务器资源包?或者仅用一个命令切换你的当前资源包?那么你来对地方了!
_
这个插件允许你为每个世界或整个服务器设置一个服务器资源包!它还允许你指定可以在多个世界使用的资源包!
它也兼容我的[Bungee Resourcepacks](https://modrinth.com/plugin/bungeeresourcepacks) 和 [Velocity Resourcepacks](https://modrinth.com/plugin/velocityresourcepacks) 插件,并且在服务器切换后不会让玩家重新下载资源包,只要Bungee/Velocity Resourcepacks已经在其他服务器上应用了该资源包即可!
**在报告问题之前,请务必检查是否有更新的[开发版本](https://ci.minebench.de/job/resourcepacksplugins/)!**
> 请注意,Vanilla Minecraft 客户端仅应用小于 **250MiB** 的服务器资源包!(1.15 之前为 50MiB,1.18 之前为 100MiB)
>
> 此外,某些新的**SSL 证书**用于网址(例如 Let’s Encrypt)与 Minecraft 附带的旧 Java 版本(Java 1.8.0_51,[关于此问题的错误报告](https://bugs.mojang.com/browse/mc-143768) 已提交给 Mojang)不兼容,因此你必须使用不同的证书或非加密的下载(不推荐!)
**注意:** 此插件不适用于不支持服务器资源包的 1.8 之前的旧版 Minecraft 版本!
### **功能**
* 为每个世界或整个服务器设置不同的服务器资源包
* 使用正则表达式匹配世界名称!
* 游戏内配置插件的命令
* 具有根据客户端区域设置的消息的语言系统
* 简化的组件/JSON 消息格式语法 ([MineDown](https://wiki.phoenix616.dev/library:minedown:syntax))
* 在向玩家发送包之前配置可配置的延迟
* 记住用户当前应用了哪个包,并在世界切换时不会重新发送
* 让用户自行设置包。该包可以在每次登录时重新应用,并且将用于在没有该包的服务器上的重置
* 通知用户服务器是否自动发送了该包
* [ResourcePackSendEvent](https://docs.phoenix616.dev/resourcepacksplugins/de/themoep/resourcepacksplugin/bukkit/events/resourcepacksendevent.html) 和 [ResourcePackSelectEvent](https://docs.phoenix616.dev/resourcepacksplugins/de/themoep/resourcepacksplugin/bukkit/events/resourcepackselectevent.html) 供开发人员在自己的插件中做出反应
* 根据客户端版本发送正确的包格式(需要 ViaVersion 或 ProtocolSupport),通过版本、协议编号或包格式 ID 传递任何包变体。
* 自动生成 sha1 哈希值!
* 兼容 [AuthMe Reloaded](https://www.spigotmc.org/resources/authme-reloaded.6269/)、[OpenLogin](https://www.spigotmc.org/resources/openlogin-1-7x-1-19x.57272/)、NLogin、[LibrePremium](https://www.spigotmc.org/resources/librepremium-proxy-authorization-plugin-automatic-login.101040/)、JPremium。
您需要它与更多插件兼容吗?[联系我](https://github.com/phoenix616/resourcepacksplugins/issues/new)!
### **统计数据**
* [McStats.org](http://metrics.griefcraft.com/plugin/worldresourcepacks/)
* [bStats.org](https://bstats.org/plugin/bungeecord/worldresourcepacks)
### **命令**
要执行每个 /wrp 命令,您需要 `worldresourcepacks.command` 权限!
**/wrp reload [resend]** - `worldresourcepacks.command.reload` - 重新加载配置文件;如果第二个参数为 "resend",则将包重新发送到所有在线玩家
**/wrp version** - `worldresourcepacks.command.version` - 显示此插件的版本
**/wrp generatehashes** - `worldresourcepacks.command.generatehashes` - 手动生成资源包哈希值
**/wrp addpack ** - `worldresourcepacks.command.addpack` - 添加新的包
**/wrp pack ** - `worldresourcepacks.command.pack` - 查看和编辑现有包
**/wrp listassignments** - `worldresourcepacks.command.listassignments` - 查看所有世界分配
**/wrp deleteassignment ** - `worldresourcepacks.command.deleteassignment` - 删除世界分配
**/wrp assignment ** - `worldresourcepacks.command.assignment` - 查看和编辑世界分配
**/wrp globalassignment** - `worldresourcepacks.command.globalassignment` - 查看和编辑全局分配
**/resetpack [] []** - `worldresourcepacks.command.resetpack` - 重置包(玩家的),为默认包或存储的包。 (就像你在没有任何包的情况下加入服务器时会发生的情况)。 如果 设置为 false,则也会重置玩家的存储包。
要执行每个 /usepack 命令,您需要 `worldresourcepacks.command.usepack` 权限!
要为其他玩家执行它,您需要 `worldresourcepacks.command.usepack.others`!
为了让玩家访问特定的包,他们需要 `worldresourcepacks.pack.` 权限或在它配置部分中定义的权限!
**/usepack** - 列出您可以使用的所有可用包
**/usepack []** - 将特定的包发送给自己或另一个玩家
### **配置**
config.yml 允许您配置可以在命令中设置的所有内容以及更多内容,请参阅 [GitHub 上的文件](https://github.com/phoenix616/resourcepacksplugins/blob/master/bukkit/src/main/resources/config.yml) 以了解所有选项的解释! (某些选项可能仅在 [最新开发版本](https://ci.minebench.de/job/ResourcepacksPlugins/) 中可用!)
### **关于客户端冻结**
> **从 1.20.3 开始,此问题不应再发生!**
当服务器资源包发送到客户端时,在下载完成后会短暂冻结。 (与手动应用本地包相同)这是因为客户端必须重新加载所有资源,检查哪些资源重叠,并对它们进行一些计算和操作。(例如,将所有纹理拼接成单个图像,就像它们在第一个纹理包格式中的一样) 这不是下载问题,因为客户端会本地缓存包文件,并且如果它们的哈希值未更改,就不会重新下载它们。
持续时间通常取决于 PC 的性能以及所有已应用的资源包中使用的纹理的大小(HD 包需要更长的时间)。 (因此,即使服务器资源包不包含任何 HD 纹理或纹理,客户端仍然会完全重新加载所有本地应用资源包)这需要 Mojang 在客户端中修复,例如通过仅重新加载已更改的资源。
**1.14、1.15 和 1.16 有一些重大改进,并且 1.20.3 基本上修复了一切,因此建议有问题的玩家使用这些版本!**
### **开发资源**
源代码可在 [GitHub](https://github.com/phoenix616/resourcepacksplugins) 上,并根据 [GPLv3](https://github.com/Phoenix616/ResourcepacksPlugins/blob/master/LICENSE#L589-L610) 许可分发。
开发版本可以在 Minebench.de [Jenkins](http://ci.minebench.de/job/resourcepacksplugins/) 上找到。
如果您打算基于 mine 开发插件,也有一些 [Javadocs](http://docs.phoenix616.dev/resourcepacksplugins/)。
### **支持**
您可以在 [SpigotMC 上的资源讨论线程](https://www.spigotmc.org/threads/world-resourcepacks.125581/)、[GitHub 问题跟踪器](https://github.com/phoenix616/resourcepacksplugins/issues)、[我的 IRC 频道](https://irc.phoenix616.dev/) 或 [我的 Discord](https://phoenix616.dev/discord) 中获得支持。
### **指标**
此资源包括 [bstats.org](https://bstats.org/) 指标。 如果您不想让 bstats 收集有关您服务器的信息,则可以在 *bStats/config.yml* 文件中禁用它。 使用的 bStats-lite 类的许可证可在 [此处](https://github.com/btobastian/bstats-metrics/blob/master/license) 找到。
##### *作者不提供任何形式的保修或责任来分发此资源。 更多信息请[在此处](https://github.com/Phoenix616/ResourcepacksPlugins/blob/master/LICENSE#L589-L610) 阅读*