另外,也可用函数的方法进行汉化。首先启动游戏的debug模式。
Debug模式启动方法:在c盘用户名的文件夹里打开T-engine>4.0>settings>复制里面随便一个后缀为cfg的文件并将其改名为cheat>打开文件后清除里面内容,写上cheat = true ,之后保存关闭就行了。如果要退出debug模式,就把这个文件移动到其它地方就好了。如果成功进入debug模式,在游戏的开始菜单最下方会有重启游戏的选项。
在debug模式下新开一个档,进入游戏后按下ctrl+a,打开debug菜单>翻译工具>选择待翻译的组件(不选择则默认选择所有),选择好后在翻译工具里选择提取文本,此时可以在T-engine>4.0>tome>user-i18n>extracted-text里找到你刚刚提取的mod的游戏文本。
这是我用此前贴吧里下载的虫巢使者提取出来的文本。
接着在要汉化的mod的data里创建一个新文件夹,命名为locales,在里面创建一个空的lua文件,命名为zh_hans,这个就是汉化文件,可以通过复制其它lua文件再清空内容来完成这一步。
在zh_hans里首先写上locale “zh_hans”用于加载该文件。
比如现在希望汉化虫巢使者的选人界面,可以利用刚刚提取的游戏文本,直接复制
------------------------------------------------
section "tome-hiveminder_class/data/birth/classes/wilder.lua
这一段粘贴到汉化文件里,这段代码应该是用于定位相应的文件。如下图。
打开相应的原文件(即wilder.lua),可以看到name = “Hiveminder” ,双引号里一般都是可汉化的文本,观察提取的游戏文本,会看到
tDef(6, "Hiveminder", "birth descriptor name",true) –
根据这个,可以在汉化文件中编写:
t("Hiveminder", "虫巢使者", "birth descriptorname")
那么,游戏中选人界面的文本就会被汉化了。
t(“xxx1”, “xxx2”, “xxx3”),这里xxx1是原文本,xxx2是要替换的文本,xxx3是该文本的类型。具体文本属于什么类型可以参照提取出的游戏文本。注意:t()的参数间要用逗号+空格分隔开来。
如果明明是可汉化内容,但提取出的游戏文本中却没有写出,这很正常,其类型就填写”_t”。