开源 企业版 高校版 私有云 模力方舟 AI 队友
代码拉取完成,页面将自动刷新
加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
已有帐号? 立即登录
文件
master
分支 (3)
标签 (1)
master
dev/v3.0.7
dev/v3.0.6
v3.0.6
master
分支 (3)
标签 (1)
master
dev/v3.0.7
dev/v3.0.6
v3.0.6
克隆/下载
克隆/下载
提示
下载代码请复制以下命令到终端执行
为确保你提交的代码身份被 Gitee 正确识别,请执行以下命令完成配置
初次使用 SSH 协议进行代码克隆、推送等操作时,需按下述提示完成 SSH 配置
1 生成 RSA 密钥
2 获取 RSA 公钥内容,并配置到 SSH公钥
在 Gitee 上使用 SVN,请访问 使用指南
使用 HTTPS 协议时,命令行会出现如下账号密码验证步骤。基于安全考虑,Gitee 建议 配置并使用私人令牌 替代登录密码进行克隆、推送等操作
Username for 'https://gitee.com': userName
Password for 'https://userName@gitee.com': # 私人令牌
master
分支 (3)
标签 (1)
master
dev/v3.0.7
dev/v3.0.6
v3.0.6
UnityGameFramework
/
Scripts
/
Runtime
/
Localization
/
DefaultLocalizationHelper.cs
UnityGameFramework
/
Scripts
/
Runtime
/
Localization
/
DefaultLocalizationHelper.cs
DefaultLocalizationHelper.cs 8.57 KB
一键复制 编辑 原始数据 按行查看 历史
Jiang Yin 提交于 2017年07月04日 14:17 +08:00 . 初始化工程
//------------------------------------------------------------
// Game Framework v3.x
// Copyright © 2013-2017 Jiang Yin. All rights reserved.
// Homepage: http://gameframework.cn/
// Feedback: mailto:jiangyin@gameframework.cn
//------------------------------------------------------------
using GameFramework;
using GameFramework.Localization;
using System;
using UnityEngine;
namespace UnityGameFramework.Runtime
{
/// <summary>
/// 默认本地化辅助器。
/// </summary>
public class DefaultLocalizationHelper : LocalizationHelperBase
{
private static readonly string[] ColumnSplit = new string[] { "\t" };
private const int ColumnCount = 4;
private ResourceComponent m_ResourceComponent = null;
private ILocalizationManager m_LocalizationManager = null;
/// <summary>
/// 获取系统语言。
/// </summary>
public override Language SystemLanguage
{
get
{
switch (Application.systemLanguage)
{
case UnityEngine.SystemLanguage.Afrikaans: return Language.Afrikaans;
case UnityEngine.SystemLanguage.Arabic: return Language.Arabic;
case UnityEngine.SystemLanguage.Basque: return Language.Basque;
case UnityEngine.SystemLanguage.Belarusian: return Language.Belarusian;
case UnityEngine.SystemLanguage.Bulgarian: return Language.Bulgarian;
case UnityEngine.SystemLanguage.Catalan: return Language.Catalan;
case UnityEngine.SystemLanguage.Chinese: return Language.ChineseSimplified;
case UnityEngine.SystemLanguage.ChineseSimplified: return Language.ChineseSimplified;
case UnityEngine.SystemLanguage.ChineseTraditional: return Language.ChineseTraditional;
case UnityEngine.SystemLanguage.Czech: return Language.Czech;
case UnityEngine.SystemLanguage.Danish: return Language.Danish;
case UnityEngine.SystemLanguage.Dutch: return Language.Dutch;
case UnityEngine.SystemLanguage.English: return Language.English;
case UnityEngine.SystemLanguage.Estonian: return Language.Estonian;
case UnityEngine.SystemLanguage.Faroese: return Language.Faroese;
case UnityEngine.SystemLanguage.Finnish: return Language.Finnish;
case UnityEngine.SystemLanguage.French: return Language.French;
case UnityEngine.SystemLanguage.German: return Language.German;
case UnityEngine.SystemLanguage.Greek: return Language.Greek;
case UnityEngine.SystemLanguage.Hebrew: return Language.Hebrew;
case UnityEngine.SystemLanguage.Hungarian: return Language.Hungarian;
case UnityEngine.SystemLanguage.Icelandic: return Language.Icelandic;
case UnityEngine.SystemLanguage.Indonesian: return Language.Indonesian;
case UnityEngine.SystemLanguage.Italian: return Language.Italian;
case UnityEngine.SystemLanguage.Japanese: return Language.Japanese;
case UnityEngine.SystemLanguage.Korean: return Language.Korean;
case UnityEngine.SystemLanguage.Latvian: return Language.Latvian;
case UnityEngine.SystemLanguage.Lithuanian: return Language.Lithuanian;
case UnityEngine.SystemLanguage.Norwegian: return Language.Norwegian;
case UnityEngine.SystemLanguage.Polish: return Language.Polish;
case UnityEngine.SystemLanguage.Portuguese: return Language.PortuguesePortugal;
case UnityEngine.SystemLanguage.Romanian: return Language.Romanian;
case UnityEngine.SystemLanguage.Russian: return Language.Russian;
case UnityEngine.SystemLanguage.SerboCroatian: return Language.SerboCroatian;
case UnityEngine.SystemLanguage.Slovak: return Language.Slovak;
case UnityEngine.SystemLanguage.Slovenian: return Language.Slovenian;
case UnityEngine.SystemLanguage.Spanish: return Language.Spanish;
case UnityEngine.SystemLanguage.Swedish: return Language.Swedish;
case UnityEngine.SystemLanguage.Thai: return Language.Thai;
case UnityEngine.SystemLanguage.Turkish: return Language.Turkish;
case UnityEngine.SystemLanguage.Ukrainian: return Language.Ukrainian;
case UnityEngine.SystemLanguage.Unknown: return Language.Unspecified;
case UnityEngine.SystemLanguage.Vietnamese: return Language.Vietnamese;
default: return Language.Unspecified;
}
}
}
/// <summary>
/// 加载字典。
/// </summary>
/// <param name="dictionaryName">字典名称。</param>
/// <param name="dictionaryAsset">字典资源。</param>
/// <param name="userData">用户自定义数据。</param>
/// <returns>加载是否成功。</returns>
public override bool LoadDictionary(string dictionaryName, object dictionaryAsset, object userData)
{
TextAsset textAsset = dictionaryAsset as TextAsset;
if (textAsset == null)
{
Log.Warning("Dictionary asset '{0}' is invalid.", dictionaryName);
return false;
}
bool retVal = m_LocalizationManager.ParseDictionary(textAsset.text, userData);
if (!retVal)
{
Log.Warning("Dictionary asset '{0}' parse failure.", dictionaryName);
}
return retVal;
}
/// <summary>
/// 解析字典。
/// </summary>
/// <param name="text">要解析的字典文本。</param>
/// <param name="userData">用户自定义数据。</param>
/// <returns>是否解析字典成功。</returns>
public override bool ParseDictionary(string text, object userData)
{
try
{
string[] rowTexts = Utility.Text.SplitToLines(text);
for (int i = 0; i < rowTexts.Length; i++)
{
if (rowTexts[i].Length <= 0 || rowTexts[i][0] == '#')
{
continue;
}
string[] splitLine = rowTexts[i].Split(ColumnSplit, StringSplitOptions.None);
if (splitLine.Length != ColumnCount)
{
Log.Warning("Can not parse dictionary '{0}'.", text);
return false;
}
if (!AddRawString(splitLine[1], splitLine[3]))
{
Log.Warning("Can not add raw string with key '{0}' which may be invalid or duplicate.", splitLine[1]);
return false;
}
}
return true;
}
catch (Exception exception)
{
Log.Warning("Can not parse dictionary '{0}' with exception '{1}'.", text, string.Format("{0}\n{1}", exception.Message, exception.StackTrace));
return false;
}
}
/// <summary>
/// 释放字典资源。
/// </summary>
/// <param name="dictionaryAsset">要释放的字典资源。</param>
public override void ReleaseDictionaryAsset(object dictionaryAsset)
{
m_ResourceComponent.UnloadAsset(dictionaryAsset);
}
/// <summary>
/// 增加字典。
/// </summary>
/// <param name="key">字典主键。</param>
/// <param name="value">字典内容。</param>
/// <returns>是否增加字典成功。</returns>
protected bool AddRawString(string key, string value)
{
return m_LocalizationManager.AddRawString(key, value);
}
private void Start()
{
m_ResourceComponent = GameEntry.GetComponent<ResourceComponent>();
if (m_ResourceComponent == null)
{
Log.Fatal("Resource component is invalid.");
return;
}
m_LocalizationManager = GameFrameworkEntry.GetModule<ILocalizationManager>();
if (m_LocalizationManager == null)
{
Log.Fatal("Localization manager is invalid.");
return;
}
}
}
}
Loading...
举报
举报成功
我们将于2个工作日内通过站内信反馈结果给你!
请认真填写举报原因,尽可能描述详细。
请选择举报类型
取消
发送
误判申诉

此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。

如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。

取消
提交

简介

Game Framework 是一个基于 Unity 5.3+ 引擎的游戏框架,主要对游戏开发过程中常用模块进行了封装,很大程度地规范开发过程、加快开发速度并保证产品质量。
暂无标签
MIT
使用 MIT 开源许可协议
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
编辑仓库简介
简介内容
主页
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/androidfm/UnityGameFramework.git
git@gitee.com:androidfm/UnityGameFramework.git
androidfm
UnityGameFramework
UnityGameFramework
master
点此查找更多帮助

搜索帮助

评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册

AltStyle によって変換されたページ (->オリジナル) /