// ***********************************************************************
// Assembly : Unity
// Author : Kimch
// Created :
//
// Last Modified By : Kimch
// Last Modified On :
// ***********************************************************************
//
//
// ***********************************************************************
namespace G
{
using System.Collections;
using System.Collections.Generic;
using F;
using UnityEngine;
internal class LanguageProxy : GameProxy
{
#region Property
public LanguageEntry defaultLanguage
{
get;
private set;
}
public LanguageEntry currentLanguage
{
get;
private set;
}
public LanguageEntry[] allLanguages
{
get;
private set;
}
public SystemLanguage systemLanguage
{
get { return Application.systemLanguage; }
}
public override int priority
{
get
{
return 998;
}
}
#endregion
#region Method
public LanguageEntry GetLanguage(string name)
{
if (allLanguages != null)
{
return System.Array.Find(allLanguages, l => l.name == name);
}
return null;
}
public void SetLanguage(string name)
{
currentLanguage = GetLanguage(name);
if (currentLanguage == null)
{
currentLanguage = defaultLanguage;
}
PlayerPrefs.SetString("language", currentLanguage.name);
PlayerPrefs.Save();
}
private void Load(IDictionary table)
{
var langList = table.GetList("language");
if (langList != null && langList.Count > 0)
{
var languages = new LanguageEntry[langList.Count - 1];
var tmpL0 = (IList