private static bool RaiseMuteChangingEvent( [NotNull] PlayerInfo target, [NotNull] Player muter, TimeSpan duration, bool unmuting, bool announce ) { var h = MuteChanging; if ( h == null ) return false; var e = new PlayerInfoMuteChangingEventArgs( target, muter, duration, unmuting, announce ); h( null, e ); return !e.Cancel; }