这是第一个 Unity 开放项目的repo,是 Unity 和社区合作创建的一个小型开源游戏演示,第一款游戏是一款名为 Chop Chop 的动作冒险游戏。
您最多选择25个主题 主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 
 

63 行
1.4 KiB

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.UI;
public class UIPause : MonoBehaviour
{
[SerializeField] private UIButtonSetter _resumeButton = default;
[SerializeField] private UIButtonSetter _settingsButton = default;
[SerializeField] private UIButtonSetter _backToMenuButton = default;
public UnityAction Resumed = default;
public UnityAction SettingsScreenOpened = default;
public UnityAction BackToMainRequested = default;
[SerializeField] private InputReader _inputReader = default;
[SerializeField] private BoolEventChannelSO _onPauseOpened = default;
private void OnEnable()
{
_onPauseOpened?.RaiseEvent(true);
_resumeButton.SetButton(true);
_inputReader.menuCloseEvent += Resume;
_resumeButton.Clicked += Resume;
_settingsButton.Clicked += OpenSettingsScreen;
_backToMenuButton.Clicked += BackToMainMenuConfirmation;
}
private void OnDisable()
{
_onPauseOpened?.RaiseEvent(false);
_inputReader.menuCloseEvent -= Resume;
_resumeButton.Clicked -= Resume;
_settingsButton.Clicked -= OpenSettingsScreen;
_backToMenuButton.Clicked -= BackToMainMenuConfirmation;
}
void Resume()
{
Resumed.Invoke();
}
void OpenSettingsScreen()
{
SettingsScreenOpened.Invoke();
}
void BackToMainMenuConfirmation()
{
BackToMainRequested.Invoke();
}
public void CloseScreen()
{
Resumed.Invoke();
}
}