Files
butchers-games-test/Assets/Scripts/Game/App/AppSettings.cs
T
Boris Nikolaev 5f1e94b653 add project files
2026-08-14 01:58:31 +03:00

62 lines
1.2 KiB
C#

using UnityEngine;
using OHM.UnityToolkit;
using OHM.UnityToolkit.Vibration;
using UnityEngine.Serialization;
public class AppSettings : UniqueInstance<AppSettings>
{
[SerializeField]
public SavedDataController savedDataController;
[SerializeField]
[FormerlySerializedAs("audioManager")]
private AudioManager _audioManager;
public bool VibrationsEnabled
{
get
{
return savedDataController.SavedData.vibrationEnabled;
}
set
{
VibrationManager.Enabled = value;
savedDataController.SavedData.vibrationEnabled = value;
savedDataController.SaveData();
}
}
public bool AudioEnabled
{
get
{
return savedDataController.SavedData.soundEnabled;
}
set
{
if (_audioManager != null)
{
_audioManager.SetMasterEnabled(value);
_audioManager.SetSFXEnabled(value);
_audioManager.SetMusicEnabled(value);
}
savedDataController.SavedData.soundEnabled = value;
savedDataController.SaveData();
}
}
protected override void AwakeInstance()
{
Apply();
}
public void Apply()
{
VibrationManager.Enabled = VibrationsEnabled;
if (_audioManager != null)
{
_audioManager.Setup(AudioEnabled, AudioEnabled, AudioEnabled);
}
}
}