1. 사운드 세팅
1)
사운드 세팅 UI추가,
배경음과 효과음 이미지를 추가,
설정, 배경음, 효과음, 나가기 이미지는 Flacticon사이트에서 받아와
Sprite로 바꿔서 사용했습니다.
2)
골드메탈님의 사이트에서 가져온 배경음, 효과음 추가.
AudioManager라는 새 오브젝트를 하이라키에 생성해주고,
배경음 오브젝트, 효과음 오브젝트를 각각 생성해준 후 드래그 앤 드랍으로 적용시켰습니다.
2. 배경음, 효과음 온/오프 조작
여기서 체크이미지는
Toggle로 만들었고
사운드 세팅 이미지의 자식으로 넣어줬습니다.
(UI - Toggle)
Toggle은 클릭할 때마다 체크 표시가 온/오프가 됩니다.
이걸로 오디오의 온/오프 시스템을 추가할 것입니다.
[GameManager.cs]
public AudioSource audioBgm;
public AudioSource audioEffect;
public Toggle toggleBgm;
public Toggle toggleEffect;
public bool isOnBgm = true;
public bool isOnEffect = true;
// 세팅버튼을 누를 때 호출.
public void OnClick_BtnSoundSetting(bool isActive)
{
// 세팅버튼 누르면 액티브, 안에서 나가기 버튼을 누르면 디액티브.
objSoundSetting.SetActive(isActive);
}
// 세팅창에서 배경음토글 버튼을 클릭할 때 호출.
public void OnClick_ToggleBgm()
{
if (isOnBgm)
isOnBgm = false;
else
isOnBgm = true;
toggleBgm.isOn = isOnBgm;
//배경음 온/오프.
if (toggleBgm.isOn == true)
audioBgm.Play();
else
audioBgm.Stop();
}
// 세팅창에서 효과음 토글 버튼을 클릭할 때 호출.
public void OnClick_ToggleEffect()
{
if (isOnEffect)
isOnEffect = false;
else
isOnEffect = true;
toggleEffect.isOn = isOnEffect;
// 효과음 온/오프.
if (toggleEffect.isOn == true)
audioEffect.Play();
else
audioEffect.Stop();
}
[Fruits.cs]
효과음은 과일이 합쳐질 때마다 들리게 할 것입니다.
void OnCollisionStay2D(Collision2D collision)
{
if (collision.gameObject.tag == "Circle")
{
Fruits other = collision.gameObject.GetComponent<Fruits>();
if (level == other.level && !isMerge && !other.isMerge && level < 6)
{
float thisX = gameObject.transform.position.x;
float thisY = gameObject.transform.position.y;
float otherX = other.transform.position.x;
float otherY = other.transform.position.y;
if (thisY > otherY || (thisY == otherY && thisX > otherX))
{
Merge(other.transform.position);
other.gameObject.SetActive(false);
// 합쳐지면 효과음 플레이.
if(GameManager.instance.isOnEffect == true)
GameManager.instance.audioEffect.Play();
LevelUp();
}
}
}
}
'Unity > Unity 물리기반 Merge게임 프로젝트(수박라이크)' 카테고리의 다른 글
[Unity 게임 프로젝트] 물리기반 머지게임(4) - 점수 계산 기능, 게임 시작/종료 UI추가 (0) | 2024.04.29 |
---|---|
[Unity 게임 프로젝트] 물리기반 머지게임(3) - 오브젝트 합치기, 애니메이션 (0) | 2024.04.29 |
[Unity 게임 프로젝트] 물리기반 머지게임(2) - 데드라인 오브젝트 추가, 과일 오브젝트 추가 및 프리팹화, 마우스 포인터를 이용한 오브젝트 이동 및 이동제 (0) | 2024.04.23 |
[Unity 게임프로젝트] 물리기반 머지게임(1) - 모바일 설정, 배경화면 및 콜라이더 오브젝트 추가 (0) | 2024.04.23 |