You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

53 lines
1.9 KiB

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 settingsScreen;
[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 settingsButton;
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 SetSettingsScreen() => SetScreen(settingsScreen, settingsButton);
}