2.0.12 • Published 2 years ago

cc-i18n v2.0.12

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

简介

基于cocos creator引擎的游戏开发i18n多语言模块,是在nodejs环境下运行的i18n工具,所以需要确保安装nodejs环境。 该工具可以帮助你自动检测游戏预制体中的cc.Label组件,并生成相应的key存储在json文件中,并把相对应的key设置在 I18nLabel组件中,同时也支持自动给预制体增加I18nLabel组件

介绍

  • 安装
  • 命令行
  • 功能使用
  • 如何增加新语言
  • 如何使用标签多语言json文件
  • 版本
  • 使用说明链接

安装

搭建nodejs环境,并查看是否有nodejs和npm版本 node --version npm --version,如果以确定安装了相应环境, 则执行下面命令进行安装: npm install cc-i18n -g

命令行

工具通过五个命令可以启动运行:

  • cc-i18n create:

    这个命令会在项目的scripts/i18n目录下生成i18n模块代码,同时在resources/i18n生成相应目录结构

  • cc-i18n gen-key:
  • label多语言:

    这个命令是根据预制体Label节点中挂载的I18nLabel组件生成相应的key,并把key保存到一个Json文件中; 注意:每一个需要自动生成多语言key的label节点,都需要手动挂载I8nLabel组件,如果想自动挂载,请使用 cc-i18n gen-set-key --g 这个命令,但这个命令会在所有label节点上挂载I18nLabel组件,故使用前 需要考虑清楚是不是所有label节点都是静态文本。

  • sprite多语言:

    对于sprite多语言来说,会检测assets/resources/i18n/sprite目录下的所有图片资源,并获取图片资源的uuid, 把uuid存储在json文件中。在使用时,必须先在i18n/sprite/路径下根据不同的语言增加相应的目录,比如,如果 你只发布中文和英语两种语言,那么就在i18n/sprite路径下建zh和en两个文件夹,在这两个文件夹下各自语言的图片, 必须要确保同一种图片,在不同语言文件夹下的图片文件名相同。

注意:i18n/sprite/json路径下的文件内容不得更改,除非你完全了解更改后会产生什么后果

  • cc-i18n set-key:

    需要开发者实现在须要进行多语言适配的挂有cc.Label组件或者cc.Sprite组件的节点挂载I18nLabel组件或者I18nSprite组件, 只有挂载了对应的I18nLabel组件和I18nSprite组件,才能对这两个组件设置key。

  • label多语言:

    这个命令会检查挂有cc.Label组件的这些节点是否有挂载I18nLabel组件,如果有,则把相应的key设置到组件上

  • sprite多语言:

    这个命令会检查挂有cc.Sprite组件的这些节点是否有挂载I18nSprite组件,如果有,则会根据cc.Sprite组件上挂载的 相应图片,把这张图片的uuid设置到I18nSprite组件上。

  • cc-i18n gen-set-key:

    这个命令会同时执行 cc-i18n gen-key, cc-i18n set-key命令。

  • cc-i18n gen-set-key -g:

    这个命令是根据预制体节点中挂载的cc.Label组件生成相应的key,并把key保存到一个Json文件中,然后再在挂载了 cc.Label组件的节点上增加I18nLabel组件,并把相应的key设置到组件上(这个功能在大项目中可能会存在问题)

注意:这个命令对sprite多语言不起作用,只有label多语言才有用,当使用这个命令时,sprite多语言不会生成key, 以及设置key。

功能使用

  • 初始化

    在项目根目录下运行命令 cc-i18n create

  • 静态文本

    在项目根目录运行 cc-i18n gen-set-key 可以生成并设置多语言key

  • 动态文本

    可以使用下面方法设置动态文本:

node.getComponent(I18nLabel).setLabel("hello")
    
    

如何增加语言

可以在LanguageEnum文件中增加语言枚举,例如:

enum Language {
    'zh',
    'en',
}

同时在resources/i18n.text目录下增加与枚举同名的目录,再在这个目录下增加枚举同名的json文件即可

如何使用标签多语言

只需要在项目完成后,把zh.json翻译成所需要的语言版本即可,注意key必须一样,不能改变,即把key对应的文本翻译成不同语言即可。

cocos creator 版本

3.x以上

使用说明

详细说明文档 https://blog.csdn.net/UchihaMadara_2022/article/details/126219095?spm=1001.2014.3001.5502

2.0.12

2 years ago

2.0.11

2 years ago

2.0.10

2 years ago

2.0.9

2 years ago

2.0.8

2 years ago

2.0.7

2 years ago

2.0.6

2 years ago

2.0.5

2 years ago

2.0.4

2 years ago

2.0.3

2 years ago

2.0.2

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago

1.0.40

2 years ago

1.0.39

2 years ago

1.0.38

2 years ago

1.0.37

2 years ago

1.0.36

2 years ago

1.0.35

2 years ago

1.0.34

2 years ago

1.0.33

2 years ago

1.0.32

2 years ago

1.0.31

2 years ago

1.0.30

2 years ago

1.0.29

2 years ago

1.0.28

2 years ago

1.0.27

2 years ago

1.0.26

2 years ago

1.0.25

2 years ago

1.0.24

2 years ago

1.0.23

2 years ago

1.0.22

2 years ago

1.0.21

2 years ago

1.0.20

2 years ago

1.0.19

2 years ago

1.0.18

2 years ago

1.0.17

2 years ago

1.0.16

2 years ago

1.0.15

2 years ago

1.0.14

2 years ago

1.0.13

2 years ago

1.0.12

2 years ago

1.0.11

2 years ago

1.0.10

2 years ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago