summaryrefslogtreecommitdiff
path: root/GameCode/SettingsUIHelper.cs
diff options
context:
space:
mode:
authorchai <215380520@qq.com>2024-05-19 16:05:01 +0800
committerchai <215380520@qq.com>2024-05-19 16:05:01 +0800
commitc5f145786f4c6d2fe4bea831dfc16e52228920a5 (patch)
treea6ead7ea8266c767d58ed0f816dcd7a1dd75bd65 /GameCode/SettingsUIHelper.cs
parent48b64e573a1709dc923cb9162b55be0246b3ff63 (diff)
* move
Diffstat (limited to 'GameCode/SettingsUIHelper.cs')
-rw-r--r--GameCode/SettingsUIHelper.cs114
1 files changed, 0 insertions, 114 deletions
diff --git a/GameCode/SettingsUIHelper.cs b/GameCode/SettingsUIHelper.cs
deleted file mode 100644
index 1156f53..0000000
--- a/GameCode/SettingsUIHelper.cs
+++ /dev/null
@@ -1,114 +0,0 @@
-using System;
-using System.Collections.Generic;
-using UnityEngine;
-using UnityEngine.UI;
-
-public class SettingsUIHelper : MonoBehaviour
-{
- [Serializable]
- public class SettingsTab
- {
- public TFUITextButton parentElement;
-
- public VerticalLayoutGroup childContainer;
-
- public void ComputeNavigationForSettingsTab()
- {
- List<ThronefallUIElement> list = new List<ThronefallUIElement>();
- foreach (Transform item in childContainer.transform)
- {
- list.Add(item.GetComponent<ThronefallUIElement>());
- }
- parentElement.botNav = list[0];
- parentElement.topNav = list[list.Count - 1];
- for (int i = 0; i < list.Count; i++)
- {
- ThronefallUIElement thronefallUIElement = list[i];
- if (i == 0)
- {
- thronefallUIElement.topNav = parentElement;
- }
- else
- {
- thronefallUIElement.topNav = list[i - 1];
- }
- if (i == list.Count - 1)
- {
- thronefallUIElement.botNav = parentElement;
- }
- else
- {
- thronefallUIElement.botNav = list[i + 1];
- }
- }
- }
- }
-
- public UIFrame targetFrame;
-
- public SettingsTab videoTab;
-
- public SettingsTab audioTab;
-
- public SettingsTab gameplayTab;
-
- public SettingsTab controlsTab;
-
- public GameObject dimBG;
-
- private SettingsTab currentSelectedTab;
-
- private Dictionary<ThronefallUIElement, SettingsTab> allTabs = new Dictionary<ThronefallUIElement, SettingsTab>();
-
- private void Awake()
- {
- allTabs.Add(videoTab.parentElement, videoTab);
- allTabs.Add(audioTab.parentElement, audioTab);
- allTabs.Add(gameplayTab.parentElement, gameplayTab);
- allTabs.Add(controlsTab.parentElement, controlsTab);
- videoTab.childContainer.gameObject.SetActive(value: false);
- audioTab.childContainer.gameObject.SetActive(value: false);
- gameplayTab.childContainer.gameObject.SetActive(value: false);
- controlsTab.childContainer.gameObject.SetActive(value: false);
- RecomputeAllNavigation();
- }
-
- private void RecomputeAllNavigation()
- {
- videoTab.ComputeNavigationForSettingsTab();
- audioTab.ComputeNavigationForSettingsTab();
- gameplayTab.ComputeNavigationForSettingsTab();
- controlsTab.ComputeNavigationForSettingsTab();
- }
-
- public void OnShow()
- {
- if (SceneTransitionManager.instance.CurrentSceneState == SceneTransitionManager.SceneState.MainMenu)
- {
- dimBG.SetActive(value: false);
- }
- else
- {
- dimBG.SetActive(value: true);
- }
- }
-
- public void OnSelect()
- {
- SettingsTab value = null;
- if (allTabs.TryGetValue(targetFrame.CurrentSelection, out value))
- {
- if (currentSelectedTab != null)
- {
- currentSelectedTab.childContainer.gameObject.SetActive(value: false);
- currentSelectedTab.parentElement.applyOverrideStyle = false;
- }
- currentSelectedTab = value;
- currentSelectedTab.childContainer.gameObject.SetActive(value: true);
- }
- else if (currentSelectedTab != null)
- {
- currentSelectedTab.parentElement.applyOverrideStyle = true;
- }
- }
-}