BorisKotlyar

Untitled

Jun 6th, 2020
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.41 KB | None | 0 0
  1. using System;
  2. using Core.Systems.UI.UISystem;
  3. using TMPro;
  4. using UnityEngine;
  5. using UnityEngine.UI;
  6.  
  7. public class UIMainScreenWindow : UIWindow
  8. {
  9.     [SerializeField] private Button _settingsButton;
  10.     [SerializeField] private Button _questButton;
  11.  
  12.     [SerializeField] private TextMeshProUGUI _playCounterLabel;
  13.    
  14.     public event EventHandler OnSettingsButtonPress;
  15.     public event EventHandler OnQuestButtonPress;
  16.  
  17.     #region UIWindow implementation
  18.     public override void Show()
  19.     {
  20.         base.Show();
  21.        
  22.         _settingsButton.onClick.AddListener(SettingsButtonPressHandler);
  23.         _questButton.onClick.AddListener(QuestButtonPressHandler);
  24.     }
  25.    
  26.     public override void Hide()
  27.     {
  28.         base.Hide();
  29.        
  30.         _settingsButton.onClick.RemoveListener(SettingsButtonPressHandler);
  31.         _questButton.onClick.RemoveListener(QuestButtonPressHandler);
  32.     }
  33.     #endregion
  34.  
  35.    
  36.    
  37.    
  38.     #region Inner implementation
  39.     public void SetPlayCounter(int playCount)
  40.     {
  41.         _playCounterLabel.text = playCount.ToString();
  42.     }
  43.     #endregion
  44.  
  45.    
  46.  
  47.  
  48.     #region Private methods
  49.     private void SettingsButtonPressHandler()
  50.     {
  51.         OnSettingsButtonPress?.Invoke(this, EventArgs.Empty);
  52.     }
  53.    
  54.     private void QuestButtonPressHandler()
  55.     {
  56.         OnSettingsButtonPress?.Invoke(this, EventArgs.Empty);
  57.     }
  58.     #endregion
  59. }
Add Comment
Please, Sign In to add comment