using System.Collections; using System.Collections.Generic; using UnityEngine; public class MainScreensManager : MonoBehaviour { [SerializeField] private ChatManager chatManager; [Header("Screens")] [SerializeField] private GameObject profileScreen; [SerializeField] private GameObject locationScreen; [SerializeField] private GameObject styleScreen; [SerializeField] private GameObject eventsScreen; [SerializeField] private GameObject newsScreen; [SerializeField] private GameObject tmpScreen; [Header("Buttons")] [SerializeField] private SelectableButton gameButton; [SerializeField] private SelectableButton profileButton; [SerializeField] private SelectableButton locationButton; [SerializeField] private SelectableButton styleButton; [SerializeField] private SelectableButton eventsButton; [SerializeField] private SelectableButton newsButton; [SerializeField] private SelectableButton tmpButton; private GameObject activeScreen; private void Start() { activeScreen = chatManager.ChatPanel; } private void SetScreen(GameObject screen, SelectableButton button) { if (activeScreen) activeScreen.SetActive(false); activeScreen = screen; if (activeScreen) activeScreen.SetActive(true); if (!button.IsSelected) button.Select(); } public void SetGameScreen() { SetScreen(chatManager.ChatPanel, gameButton); chatManager.UpdateAnimator(); } public void SetProfileScreen() => SetScreen(profileScreen, profileButton); public void SetLocationScreen() => SetScreen(locationScreen, locationButton); public void SetStyleScreen() => SetScreen(styleScreen, styleButton); public void SetEventsScreen() => SetScreen(eventsScreen, eventsButton); public void SetNewsScreen() => SetScreen(newsScreen, newsButton); public void SetTmpScreen() => SetScreen(tmpScreen, tmpButton); }