Files
HauntedBloodlines/Assets/Scripts/Managers/RandomSoundsManager.cs
2025-05-29 22:31:40 +03:00

145 lines
5.3 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class RandomSoundsManager : MonoBehaviour
{
#region Door Variables
[SerializeField] List<AudioClip> _openDoorAudioClips;
[SerializeField] List<AudioClip> _closeDoorAudioClips;
[SerializeField] List<AudioClip> _bangDoorAudioClips;
[SerializeField] List<AudioClip> _knobDoorAudioClips;
[SerializeField] AudioClip _lockedDoorSound;
#endregion
#region Light Variables
[SerializeField] List<AudioClip> _lightSwitchAudioClips;
[SerializeField] List<AudioClip> _lightBussAudioClips;
[SerializeField] List<AudioClip> _lightBreakAudioClips;
public AudioClip randomFlickeringClip;
#endregion
#region Drawer Variables
[SerializeField] List<AudioClip> _openDrawerAudioClips;
[SerializeField] List<AudioClip> _closeDrawerAudioClips;
#endregion
#region Window Variables
[SerializeField] List<AudioClip> _openWindowAudioClips;
[SerializeField] List<AudioClip> _closeWindowAudioClips;
#endregion
#region Cupboard Variables
[SerializeField] List<AudioClip> _openCupboardAudioClips;
[SerializeField] List<AudioClip> _closeCupboardAudioClips;
#endregion
private static RandomSoundsManager _instance;
public static RandomSoundsManager GetInstance() { return _instance; }
private void Awake()
{
if (!_instance)
{
_instance = this;
}
}
#region DoorSounds
public void PlayRandromOpenSound(AudioSource doorAudioSource)
{
AudioClip randomClip = _openDoorAudioClips[Random.Range(0, _openDoorAudioClips.Count)];
doorAudioSource.PlayOneShot(randomClip);
Debug.Log("Open Door:" + randomClip + " " + "is the name of the audioclip");
}
public void PlayRandomCloseSound(AudioSource doorAudioSource)
{
AudioClip randomClip = _closeDoorAudioClips[Random.Range(0, _closeDoorAudioClips.Count)];
doorAudioSource.PlayOneShot(randomClip);
Debug.Log("Close Door" + randomClip + " " + "is the name of the audioclip");
}
public void PlayLockDoorSound(AudioSource doorAudioSource)
{
doorAudioSource.PlayOneShot(_lockedDoorSound);
}
#endregion
#region Lights Sounds
public void PlayLightSwitchSound(AudioSource lightSwitchAudioSource)
{
AudioClip randomClip = _lightSwitchAudioClips[Random.Range(0, _lightSwitchAudioClips.Count)];
lightSwitchAudioSource.PlayOneShot(randomClip, 0.2f);
Debug.Log("Light Switch" + randomClip + " " + "is the name of the audioclip");
}
public void PlayLightBussSound(AudioSource lightAudioSource)
{
AudioClip randomClip = _lightBussAudioClips[Random.Range(0, _lightBussAudioClips.Count)];
//randomFlickeringClip = randomClip;
lightAudioSource.clip = randomClip;
lightAudioSource.Play();
//lightAudioSource.PlayOneShot(randomClip, 0.5f);
Debug.Log("Buss Sound" + randomClip + " " + "is the name of the audioclip");
}
public void PlayLightBreakSound(AudioSource lightAudioSource)
{
AudioClip randomClip = _lightBreakAudioClips[Random.Range(0, _lightBreakAudioClips.Count)];
lightAudioSource.PlayOneShot(randomClip);
print("Played random break sound for light");
}
#endregion
#region Drawers Sounds
public void PlayOpenDrawerSound(AudioSource drawerAudioSource)
{
AudioClip randomClip = _openDrawerAudioClips[Random.Range(0, _openDrawerAudioClips.Count)];
drawerAudioSource.PlayOneShot(randomClip, 0.2f);
Debug.Log("drawerOpen" + randomClip + " " + "is the name of the audioclip");
}
public void PlayCloseDrawerSound(AudioSource drawerAudioSource)
{
AudioClip randomClip = _closeDrawerAudioClips[Random.Range(0, _closeDrawerAudioClips.Count)];
drawerAudioSource.PlayOneShot(randomClip, 0.2f);
Debug.Log("drawerClose" + randomClip + " " + "is the name of the audioclip");
}
#endregion
#region Window Sounds
public void PlayOpenWindowSound(AudioSource windowAudioSource)
{
AudioClip randomClip = _openWindowAudioClips[Random.Range(0, _openWindowAudioClips.Count)];
windowAudioSource.PlayOneShot(randomClip, 0.3f);
Debug.Log("window open" + randomClip + " " + "is the name of the audioclip");
}
public void PlayCloseWindowSound(AudioSource windowAudioSource)
{
AudioClip randomClip = _closeWindowAudioClips[Random.Range(0, _closeWindowAudioClips.Count)];
windowAudioSource.PlayOneShot(randomClip, 0.3f);
Debug.Log("window open" + randomClip + " " + "is the name of the audioclip");
}
#endregion
#region Cupboard Sounds
public void PlayOpenCupboardSound(AudioSource cupboardAudioSource)
{
AudioClip randomClip = _openCupboardAudioClips[Random.Range(0, _openCupboardAudioClips.Count)];
cupboardAudioSource.PlayOneShot(randomClip, 0.3f);
Debug.Log("window open" + randomClip + " " + "is the name of the audioclip");
}
public void PlayCloseCupboardSound(AudioSource cupboardAudioSource)
{
AudioClip randomClip = _closeCupboardAudioClips[Random.Range(0, _closeCupboardAudioClips.Count)];
cupboardAudioSource.PlayOneShot(randomClip, 0.3f);
Debug.Log("window open" + randomClip + " " + "is the name of the audioclip");
}
#endregion
}