1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- using UnityEngine;
- using UnityEngine.Localization;
- using TMPro;
- using UnityEngine.UI;
- using UnityEngine.Localization.Tables;
- using UnityEngine.Localization.Settings;
- public class LocalizedText : MonoBehaviour
- {
- public LocalizedString localizedString;
- private TextMeshProUGUI textComponent;
- private Text text;
- void OnDestroy()
- {
- localizedString.StringChanged -= UpdateText;
-
- }
- public void changeKey(string key)
- {
- localizedString.StringChanged -= UpdateText;
- localizedString.StringChanged += UpdateText;
- localizedString.TableEntryReference = key;
- localizedString.RefreshString();
- }
- void Start()
- {
- textComponent = GetComponent<TextMeshProUGUI>();
- text = GetComponent<Text>();
- if(localizedString!=null)
- changeKey(localizedString.TableEntryReference);
- }
- private void UpdateText(string value)
- {
- if(textComponent)
- textComponent.text = value;
- if(text)
- text.text = value;
- }
- }
|