public void Stop(AudioObject TargetObject, bool bForcedStopWithoutFade = false, bool bPassReplay = false) { if (TargetObject == null) { return; } if (TargetObject.m_Data.m_bUseFadeOut && !bForcedStopWithoutFade) { TargetObject.FadeOutAndStop(); } else { TargetObject.Stop(); } if (!bPassReplay && m_eChannelType == E_AUDIO_CHANNEL_TYPE.BGM_SPECIAL) { int nPlayingAudioCount = m_nPlayingAudioCount; ///중지후에 플레이 가능한 BGM이 없으면 맵 배경음을 재생. if (nPlayingAudioCount == 0) { SoundManager.Instance.RePlayMapBGM(); } else ///있다면 해당 BGM을 재생 { AudioObject Audio = GetRecentPlayingAudio(); if (Audio != null) { Audio.FadeInAndResume(); } } } }