diff options
| author | chai <215380520@qq.com> | 2024-05-20 22:36:58 +0800 |
|---|---|---|
| committer | chai <215380520@qq.com> | 2024-05-20 22:36:58 +0800 |
| commit | a22c505984697881f5f911a165ee022087b69e09 (patch) | |
| tree | d3c030aef1ae9b8a01c889dd2902bb1e3324e72b /Thronefall_1_57/Thronefall/I2.Loc/LocalizeTarget_TextMeshPro_UGUI.cs | |
| parent | 4a4cc82d069b26bc4d4532e73860f86b211ca239 (diff) | |
Diffstat (limited to 'Thronefall_1_57/Thronefall/I2.Loc/LocalizeTarget_TextMeshPro_UGUI.cs')
| -rw-r--r-- | Thronefall_1_57/Thronefall/I2.Loc/LocalizeTarget_TextMeshPro_UGUI.cs | 116 |
1 files changed, 0 insertions, 116 deletions
diff --git a/Thronefall_1_57/Thronefall/I2.Loc/LocalizeTarget_TextMeshPro_UGUI.cs b/Thronefall_1_57/Thronefall/I2.Loc/LocalizeTarget_TextMeshPro_UGUI.cs deleted file mode 100644 index e2f3d7d..0000000 --- a/Thronefall_1_57/Thronefall/I2.Loc/LocalizeTarget_TextMeshPro_UGUI.cs +++ /dev/null @@ -1,116 +0,0 @@ -using System; -using TMPro; -using UnityEngine; - -namespace I2.Loc; - -public class LocalizeTarget_TextMeshPro_UGUI : LocalizeTarget<TextMeshProUGUI> -{ - public TextAlignmentOptions mAlignment_RTL = TextAlignmentOptions.Right; - - public TextAlignmentOptions mAlignment_LTR = TextAlignmentOptions.Left; - - public bool mAlignmentWasRTL; - - public bool mInitializeAlignment = true; - - static LocalizeTarget_TextMeshPro_UGUI() - { - AutoRegister(); - } - - [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] - private static void AutoRegister() - { - LocalizationManager.RegisterTarget(new LocalizeTargetDesc_Type<TextMeshProUGUI, LocalizeTarget_TextMeshPro_UGUI> - { - Name = "TextMeshPro UGUI", - Priority = 100 - }); - } - - public override eTermType GetPrimaryTermType(Localize cmp) - { - return eTermType.Text; - } - - public override eTermType GetSecondaryTermType(Localize cmp) - { - return eTermType.TextMeshPFont; - } - - public override bool CanUseSecondaryTerm() - { - return true; - } - - public override bool AllowMainTermToBeRTL() - { - return true; - } - - public override bool AllowSecondTermToBeRTL() - { - return false; - } - - public override void GetFinalTerms(Localize cmp, string Main, string Secondary, out string primaryTerm, out string secondaryTerm) - { - primaryTerm = (mTarget ? mTarget.text : null); - secondaryTerm = ((mTarget.font != null) ? mTarget.font.name : string.Empty); - } - - public override void DoLocalize(Localize cmp, string mainTranslation, string secondaryTranslation) - { - TMP_FontAsset secondaryTranslatedObj = cmp.GetSecondaryTranslatedObj<TMP_FontAsset>(ref mainTranslation, ref secondaryTranslation); - if (secondaryTranslatedObj != null) - { - LocalizeTarget_TextMeshPro_Label.SetFont(mTarget, secondaryTranslatedObj); - } - else - { - Material secondaryTranslatedObj2 = cmp.GetSecondaryTranslatedObj<Material>(ref mainTranslation, ref secondaryTranslation); - if (secondaryTranslatedObj2 != null && mTarget.fontMaterial != secondaryTranslatedObj2) - { - if (!secondaryTranslatedObj2.name.StartsWith(mTarget.font.name, StringComparison.Ordinal)) - { - secondaryTranslatedObj = LocalizeTarget_TextMeshPro_Label.GetTMPFontFromMaterial(cmp, secondaryTranslation.EndsWith(secondaryTranslatedObj2.name, StringComparison.Ordinal) ? secondaryTranslation : secondaryTranslatedObj2.name); - if (secondaryTranslatedObj != null) - { - LocalizeTarget_TextMeshPro_Label.SetFont(mTarget, secondaryTranslatedObj); - } - } - LocalizeTarget_TextMeshPro_Label.SetMaterial(mTarget, secondaryTranslatedObj2); - } - } - if (mInitializeAlignment) - { - mInitializeAlignment = false; - mAlignmentWasRTL = LocalizationManager.IsRight2Left; - LocalizeTarget_TextMeshPro_Label.InitAlignment_TMPro(mAlignmentWasRTL, mTarget.alignment, out mAlignment_LTR, out mAlignment_RTL); - } - else - { - LocalizeTarget_TextMeshPro_Label.InitAlignment_TMPro(mAlignmentWasRTL, mTarget.alignment, out var alignLTR, out var alignRTL); - if ((mAlignmentWasRTL && mAlignment_RTL != alignRTL) || (!mAlignmentWasRTL && mAlignment_LTR != alignLTR)) - { - mAlignment_LTR = alignLTR; - mAlignment_RTL = alignRTL; - } - mAlignmentWasRTL = LocalizationManager.IsRight2Left; - } - if (mainTranslation != null && mTarget.text != mainTranslation) - { - if (cmp.CorrectAlignmentForRTL) - { - mTarget.alignment = (LocalizationManager.IsRight2Left ? mAlignment_RTL : mAlignment_LTR); - } - mTarget.isRightToLeftText = LocalizationManager.IsRight2Left; - if (LocalizationManager.IsRight2Left) - { - mainTranslation = I2Utils.ReverseText(mainTranslation); - } - mTarget.text = mainTranslation; - } - } -} |
