NewGamesButtonPanelScript.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  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. {
  8. private const string MainMenuSceneName = "MainMenu";
  9. public Button localGameButton;
  10. public Button onlineGameButton;
  11. public GameObject localGameSettingsPanel;
  12. public GameObject onlineGameSettingsPanel;
  13. public GameObject buttonPanel;
  14. [SerializeField] GameObject informationPanel;
  15. private Button backButton;
  16. // Start is called before the first frame update
  17. void Start()
  18. {
  19. backButton = informationPanel.GetComponent<InformationPanelScript>().getBackButton();
  20. localGameButton.onClick.AddListener(ShowLocalGameSettings);
  21. onlineGameButton.onClick.AddListener(ShowOnlineGameSettings);
  22. backButton.onClick.AddListener(() => SceneManager.LoadScene(MainMenuSceneName));
  23. }
  24. void ShowLocalGameSettings() {
  25. buttonPanel.SetActive(false);
  26. localGameSettingsPanel.SetActive(true);
  27. backButton.onClick.RemoveAllListeners();
  28. backButton.onClick.AddListener(BackButtonListenerToButtonPanel);
  29. }
  30. void ShowOnlineGameSettings() {
  31. gameObject.SetActive(false);
  32. onlineGameSettingsPanel.SetActive(true);
  33. backButton.onClick.RemoveAllListeners();
  34. backButton.onClick.AddListener(BackButtonListenerToButtonPanel);
  35. }
  36. void BackButtonListenerToButtonPanel() {
  37. onlineGameSettingsPanel.SetActive(false);
  38. localGameSettingsPanel.SetActive(false);
  39. gameObject.SetActive(true);
  40. backButton.onClick.RemoveAllListeners();
  41. backButton.onClick.AddListener(() => SceneManager.LoadScene(MainMenuSceneName));
  42. }
  43. }