c1_unity/Assets/Scripts/Const/BFPlatform.Language.cs
2025-11-03 10:59:33 +08:00

73 lines
2.3 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace BF
{
public class BFLanguageInfo
{
/// <summary>
/// 进包语言
/// </summary>
public List<string> Languages { get; private set; }
public BFLanguageInfo(List<string> languages)
{
Languages = languages;
}
/// <summary>
/// 获取fallback语言
/// </summary>
public string GetFallbackLanguage()
{
if (Languages.Count > 0)
{
return Languages[0];
}
return "";
}
public bool Contains(string lang)
{
return Languages.Contains(lang);
}
}
/// <summary>
/// language配置
/// </summary>
public partial class BFPlatform
{
// 渠道对应的语言配置
public static Dictionary<string, BFLanguageInfo> languageInfos = new Dictionary<string, BFLanguageInfo>()
{
{"com.juzu.b13.dev", new BFLanguageInfo(new List<string>{"en", "cn", "zh", "th", "ru", "id", "vi"})},
{"com.juzu.b13.dev.android", new BFLanguageInfo(new List<string>{"en", "cn", "zh", "th", "ru", "id", "vi"})},
{"com.juzu.b13.dev.ios", new BFLanguageInfo(new List<string>{"en", "cn"})},
{"com.juzu.b13.release.android", new BFLanguageInfo(new List<string>{"en"})},
{"com.juzu.b13.release.ios", new BFLanguageInfo(new List<string>{"en"})},
{"com.gearpaw.defenders.td.game", new BFLanguageInfo(new List<string>{"en", "cn", "zh", "th", "ru", "id", "vi"})},
{"com.gearpaw.defenders.td.game.ru", new BFLanguageInfo(new List<string>{"en", "cn", "zh", "th", "ru", "id", "vi"})},
{"com.juzu.b13.ios", new BFLanguageInfo(new List<string>{"en"})},
};
public static BFLanguageInfo GetLanguageInfo(string identifier)
{
if (languageInfos.TryGetValue(identifier, out BFLanguageInfo result))
{
return result;
}
return null;
}
public static BFLanguageInfo GetCurrentLanguageInfo()
{
if (languageInfos.TryGetValue(Identifier, out BFLanguageInfo result))
{
return result;
}
return null;
}
}
}