国际化
MzLib 提供了 I18n 类用于处理多语言
加载语言文件
语言文件的格式为Java的 Properties 或者 Json
使用 I18n 中的静态方法 load(File folder, float priority) 来加载所有语言文件
folder文件夹, 其内部包含多个语言文件,如en-us.langzh-ch.lang...priority优先级, 代表该I18n集合的检索顺序
java
// 假设 langs 文件夹存在并且有语言文件
I18n i18n = I18n.load(new File("langs"),1.0);然后我们使用 RegistrarI18n 类将加载好的 I18n 集合注册进去以便使用
java
// 第一个形参可以填写注册该I18n的模块, 这里用 null 替代
RegistrarI18n.register(null,i18n);注销使用
unregister, 使用方法同理
使用
将您需要进行国际化处理的文本部分用 I18n 的 getTranslation(String language,String key) 方法替换
language语言代号, 如zh-chen-uskey统一代号, 如command.help(详见语言文件内代号对应的语言信息)
这里用
sendMessage举例
java
player.sendMessage(I18n.getTranslation("zh-cn","command.help"));