游戏中的文字描述要考虑语言本地化的问题,这部分需要提前规划好.比如有些文字嵌在图片中,只能替换图片来实现;有些文字中英文长度不一致导致显示问题等.

最常用的做法是从语言包中读取所需的文字,传入同一个key,根据不同的语言环境返回对应的结果.

public class Localization
{
    public enum ELanguage
    {
        Chinese,
        English
    }
    private ELanguage eLanguage = ELanguage.Chinese;
    public string Get(string s)
    {
        if (eLanguage == ELanguage.Chinese)
            return s;

        //语言包
        //ExcelManager.language.get(key)
        return "english";
    }
    public void SetLanguage(ELanguage e)
    {
        eLanguage = e;
    }
}

由于本项目只显示中文即可,直接返回key作为返回结果.

如果以后扩展其他语言版本,其他逻辑不用变动,只需要在Localization中扩展语言包即可.

results matching ""

    No results matching ""