StartTips.cs 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. /****************************************************************************
  2. * 2024.9 CHIVA
  3. ****************************************************************************/
  4. using System;
  5. using System.Collections.Generic;
  6. using UnityEngine;
  7. using UnityEngine.UI;
  8. using QFramework;
  9. using ChivaXR;
  10. using I2.Loc;
  11. using DG.Tweening;
  12. namespace QFramework
  13. {
  14. public partial class StartTips : UIElement
  15. {
  16. private CanvasGroup m_CanvasGroup;
  17. private void Awake()
  18. {
  19. switch (OperateSetting.Instance.m_CurrentOperationMode)
  20. {
  21. case OperationMode.Learn:
  22. StartTitle.text = ScriptLocalization.tips.startlearning;
  23. if (LocalizationConfig.localization && LocalizationManager.CurrentLanguage == "English")
  24. {
  25. StartInfo.text = "Click to start learning";
  26. }
  27. else
  28. {
  29. StartInfo.text = "点击任意处开始学习";
  30. }
  31. break;
  32. case OperationMode.Practice:
  33. StartTitle.text = ScriptLocalization.tips.startparticing;
  34. if (LocalizationConfig.localization && LocalizationManager.CurrentLanguage == "English")
  35. {
  36. StartInfo.text = "Click to start practicing";
  37. }
  38. else
  39. {
  40. StartInfo.text = "点击任意处开始练习";
  41. }
  42. break;
  43. case OperationMode.Exam:
  44. StartTitle.text = ScriptLocalization.tips.startexam;
  45. if (LocalizationConfig.localization && LocalizationManager.CurrentLanguage == "English")
  46. {
  47. StartInfo.text = "Click to start the exam";
  48. }
  49. else
  50. {
  51. StartInfo.text = "点击任意处开始考试";
  52. }
  53. break;
  54. case OperationMode.FreeParctice:
  55. StartTitle.text = ScriptLocalization.tips.startparticing;
  56. if (LocalizationConfig.localization && LocalizationManager.CurrentLanguage == "English")
  57. {
  58. StartInfo.text = "Click to start practicing";
  59. }
  60. else
  61. {
  62. StartInfo.text = "点击任意处开始自由练习";
  63. }
  64. break;
  65. case OperationMode.FreeExam:
  66. StartTitle.text = ScriptLocalization.tips.startexam;
  67. if (LocalizationConfig.localization && LocalizationManager.CurrentLanguage == "English")
  68. {
  69. StartInfo.text = "Click to start the exam";
  70. }
  71. else
  72. {
  73. StartInfo.text = "点击任意处开始自由考试";
  74. }
  75. break;
  76. case OperationMode.Challenge:
  77. break;
  78. default:
  79. break;
  80. }
  81. m_CanvasGroup = this.GetOrAddComponent<CanvasGroup>();
  82. TipsBG.rectTransform.DOAnchorPosX(0, 0.5f).SetEase(Ease.OutBack);
  83. StartInfo.DOColor(new Color(1, 1, 1, 1), 1).OnComplete(() => {
  84. StartInfo.DOColor(new Color(1, 1, 1, 0.4f), 0.8f).SetEase(Ease.InSine).SetLoops(-1, LoopType.Yoyo);
  85. });
  86. StartBtn.onClick.AddListener(() =>
  87. {
  88. m_CanvasGroup.DOFade(0, 0.7f).SetEase(Ease.InSine).OnComplete(() =>
  89. {
  90. this.gameObject.SetActive(false);
  91. });
  92. OperateSetting.Instance.StartProcess();
  93. StartBtn.interactable = false;
  94. });
  95. }
  96. protected override void OnBeforeDestroy()
  97. {
  98. }
  99. void OnEnable()
  100. {
  101. LocalizationManager.OnLocalizeEvent += LocalizationManager_OnLocalizeEvent;
  102. LocalizationManager_OnLocalizeEvent();
  103. }
  104. void OnDisEnable()
  105. {
  106. LocalizationManager.OnLocalizeEvent -= LocalizationManager_OnLocalizeEvent;
  107. }
  108. private void LocalizationManager_OnLocalizeEvent()
  109. {
  110. if (LocalizationConfig.localization)
  111. {
  112. switch (OperateSetting.Instance.m_CurrentOperationMode)
  113. {
  114. case OperationMode.Learn:
  115. StartTitle.text = ScriptLocalization.tips.startlearning;
  116. if (LocalizationConfig.localization && LocalizationManager.CurrentLanguage == "English")
  117. {
  118. StartInfo.text = "Click to start learning";
  119. }
  120. else
  121. {
  122. StartInfo.text = "点击任意处开始学习";
  123. }
  124. break;
  125. case OperationMode.Practice:
  126. StartTitle.text = ScriptLocalization.tips.startparticing;
  127. if (LocalizationConfig.localization && LocalizationManager.CurrentLanguage == "English")
  128. {
  129. StartInfo.text = "Click to start practicing";
  130. }
  131. else
  132. {
  133. StartInfo.text = "点击任意处开始练习";
  134. }
  135. break;
  136. case OperationMode.Exam:
  137. StartTitle.text = ScriptLocalization.tips.startexam;
  138. if (LocalizationConfig.localization && LocalizationManager.CurrentLanguage == "English")
  139. {
  140. StartInfo.text = "Click to start the exam";
  141. }
  142. else
  143. {
  144. StartInfo.text = "点击任意处开始考试";
  145. }
  146. break;
  147. case OperationMode.Challenge:
  148. break;
  149. default:
  150. break;
  151. }
  152. }
  153. }
  154. }
  155. }