Languagy 是一个面向插件开发者的 Spigot API,旨在简化插件对玩家个体语言的支持。它并非一个可直接安装在服务器上的插件,而是供其他插件集成使用的库。服务器管理员无需直接安装 Languagy,但使用基于 Languagy 开发的插件时,可以了解其工作原理。
Languagy 的核心功能是让插件能够根据玩家客户端设置的语言,自动提供对应的翻译文本。它本身不提供自动翻译,而是要求插件开发者自行准备翻译文件,Languagy 则作为一个高效的包装器来处理语言匹配和文本获取。
希望你的插件也出现在这里?请通过私信、讨论区留言或发表评论联系作者。
Languagy 必须被着色(shaded)并重定位(relocate)到你的插件中。
repositories {
maven("https://repo.convallyria.com/releases")
}
dependencies {
implementation("com.convallyria.languagy:api:3.0.2") {
exclude("com.convallyria.languagy.libs")
}
}
tasks {
shadowJar {
relocate("com.convallyria.languagy", "YOUR_PACKAGE.libs.languagy")
}
}请参考上述 Gradle 配置中需要排除和重定位的包路径,在 Maven 中完成相应配置。作者未提供 Maven 示例,需要自行查找方法。
<repositories>
<repository>
<url>https://repo.convallyria.com/releases</url>
</repository>
</repositories>
<dependency>
<groupId>net.islandearth.languagy</groupId>
<artifactId>api</artifactId>
<version>3.0.2</version>
</dependency>成功添加依赖后,需要进行以下设置以使 Languagy 正常工作。
在你的插件主类的 onEnable 方法中初始化 Translator,并在 onDisable 中关闭它。
private Translator translator;
public Translator getTranslator() {
return translator;
}
@Override
public void onEnable() {
this.translator = Translator.of(this);
}
@Override
public void onDisable() {
translator.close(); // 非常重要!见下方说明。
}Translator 有多种方式,详情请查阅 JavaDocs。onDisable 中调用 Translator#close() 方法,以确保文件监听系统正确关闭。忽略此步骤可能导致问题。Translator#getTranslationFor 获取特定玩家的翻译。Translation#colour 方法为翻译文本着色。Translation#send 方法,它会自动处理着色并通过 Player#sendMessage 发送给玩家。你需要从插件 JAR 中提取语言文件。可以参考 ForcePack 插件中的示例类:
https://gitlab.com/SamB440/ForcePac...orcepack/spigot/translation/Translations.java
不需要。文件保持实时更新,你可以在服务器运行时修改翻译文件,更改会立即生效。
影响极小。Languagy 已在拥有 70 多名玩家的大型服务器和小型服务器上运行测试。它会在可能的情况下异步处理任务。
Languagy 基于 Java JDK 1.8 构建,并使用 Gradle 管理依赖。
cd Languagy
./gradlew build编译输出的 JAR 文件位于 build/libs 目录中。
友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作
历史访问人次:3,028,300 | 今日访问人次:12,428 | 昨日访问人次:11,147
独立 IP:4,877 | 最近24小时有3,877人访问本站
Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.
❤ Powered by GermMC 京ICP备17023959号-6