This repository has been archived on 2023-09-13. You can view files and clone it, but cannot push or open issues or pull requests.
station_obscurum_unity/Assets/Scripts/Game/InGameMenuManager.cs

55 lines
1.5 KiB
C#

using UnityEngine;
using UnityEngine.UI;
namespace Game
{
public class InGameMenuManager : MonoBehaviour
{
[SerializeField] private Button settingsButton;
[SerializeField] private Button returnToMenuButton;
[SerializeField] private Scrollbar sensitivitySlider;
[SerializeField] private Scrollbar volumeSlider;
private InGameManager gameManager;
private Animator menuAnimator;
private Player.PlayerComponent player;
// Start is called before the first frame update
private void Start()
{
menuAnimator = GetComponent<Animator>();
settingsButton.onClick.AddListener(SettingsClicked);
returnToMenuButton.onClick.AddListener(SettingsUnClicked);
player = FindObjectOfType(typeof(Player.PlayerComponent)) as Player.PlayerComponent;
gameManager = FindObjectOfType<InGameManager>();
}
// Update is called once per frame
private void Update()
{
}
private void SettingsClicked()
{
menuAnimator.SetBool("SettingsOpen", true);
}
private void SettingsUnClicked()
{
menuAnimator.SetBool("SettingsOpen", false);
}
public void UpdateSensitivity()
{
player.SetSensitivity(sensitivitySlider.value * 4f);
}
public void UpdateVolume()
{
gameManager.SetVolume(volumeSlider.value * 2);
}
}
}