FM/Assets/Scripts/Base/Language/LanguageManager.cs

46 lines
1000 B
C#
Raw Normal View History

2025-05-23 16:24:00 +08:00
using System;
using HK;
using OpenCC.Unity;
using UnityEngine;
public class LanguageManager : MonoManager<LanguageManager>
{
public enum LanguageType
{
2025-06-17 09:31:12 +08:00
English = 0,
2025-05-23 16:24:00 +08:00
Chinese,
}
public delegate void ChangeLanguage(LanguageType type);
2025-06-17 09:31:12 +08:00
2025-05-23 16:24:00 +08:00
OpenChineseConverter converter;
[SerializeField] private bool isSimplified;
public bool IsSimplified => isSimplified;
public ChangeLanguage LanguageChange;
2025-06-17 09:31:12 +08:00
public OpenChineseConverter Converter => converter;
public LanguageType type;
2025-05-23 16:24:00 +08:00
public override void Initialize()
{
base.Initialize();
converter = new OpenChineseConverter();
2025-06-17 09:31:12 +08:00
type= LanguageType.English;
2025-05-23 16:24:00 +08:00
}
public string T2S(string content)
{
return converter.T2S(content);
}
public string S2T(string content)
{
return converter.S2T(content);
}
2025-06-17 09:31:12 +08:00
public void ChangeLanguageType(LanguageType type)
{
this.type = type;
LanguageChange?.Invoke(type);
}
2025-05-23 16:24:00 +08:00
}