NewGamesButtonPanelScript.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.SceneManagement;
  5. using UnityEngine.UI;
  6. public class NewGamesButtonPanelScript : MonoBehaviour {
  7. private const string MainMenuSceneName = "MainMenu";
  8. public Button localGameButton;
  9. public Button onlineGameButton;
  10. public GameObject localGameSettingsPanel;
  11. public GameObject onlineGameSettingsPanel;
  12. public GameObject buttonPanel;
  13. [SerializeField] GameObject informationPanel;
  14. private Button backButton;
  15. // Start is called before the first frame update
  16. void Start() {
  17. backButton = informationPanel.GetComponent<InformationPanelScript>().GetBackButton();
  18. localGameButton.onClick.AddListener(ShowLocalGameSettings);
  19. onlineGameButton.onClick.AddListener(ShowOnlineGameSettings);
  20. backButton.onClick.AddListener(() => SceneManager.LoadScene(MainMenuSceneName));
  21. }
  22. void ShowLocalGameSettings() {
  23. buttonPanel.SetActive(false);
  24. localGameSettingsPanel.SetActive(true);
  25. backButton.onClick.RemoveAllListeners();
  26. backButton.onClick.AddListener(BackButtonListenerToButtonPanel);
  27. }
  28. void ShowOnlineGameSettings() {
  29. gameObject.SetActive(false);
  30. onlineGameSettingsPanel.SetActive(true);
  31. backButton.onClick.RemoveAllListeners();
  32. backButton.onClick.AddListener(BackButtonListenerToButtonPanel);
  33. }
  34. void BackButtonListenerToButtonPanel() {
  35. onlineGameSettingsPanel.SetActive(false);
  36. localGameSettingsPanel.SetActive(false);
  37. gameObject.SetActive(true);
  38. backButton.onClick.RemoveAllListeners();
  39. backButton.onClick.AddListener(() => SceneManager.LoadScene(MainMenuSceneName));
  40. }
  41. }