protected void StopDrillingCue() { if (m_drillCue != null && m_drillCue.Value.IsPlaying) { m_drillCue.Value.Stop(SharpDX.XACT3.StopFlags.Release); if (m_drillCueReleaseEnum != null) { MySoundCuesEnum releaseCue; if ((m_drillCue.Value.CueEnum == m_drillOtherCueEnum || m_drillCue.Value.CueEnum == MyAudio.GetVersion2D(m_drillOtherCueEnum.Value)) && m_drillOtherCueReleaseEnum.HasValue) { releaseCue = m_drillOtherCueReleaseEnum.Value; } else { releaseCue = m_drillCueReleaseEnum.Value; } if (m_drillCueRelease == null || !m_drillCueRelease.Value.IsPlaying) { m_drillCueRelease = MyAudio.AddCue2dOr3d(Parent, releaseCue, WorldMatrix.Translation, WorldMatrix.Forward, WorldMatrix.Up, this.Parent.Physics.LinearVelocity); } } } }