anchor.diff:  
       fSoundGain:single; //aka "Global volume"
       fMusicIsFaded:boolean;
  +    fLastMessageNoticeTime: Cardinal; // Last time message notice were played
   
       fOnFadeMusic: TEvent;
       fOnUnfadeMusic: TBooleanEvent;
  
positive.code: procedure TKMSoundPlayer.Play(SoundID: TSoundFX; Volume:single=1);
  begin
    if SKIP_SOUND or not fIsSoundInitialized then Exit;
    Play(SoundID, KMPOINTF_ZERO, false, Volume); //Redirect
  end;
  
  
negative.code:   MAX_SOURCES = 32; //depends on hardware as well
    MAX_DISTANCE = 32; //After this distance sounds are completely mute
    MAX_PRIORITY_DISTANCE_FACTOR = (1/2); //Sounds past this distance will not play if there are few slots left (gives close sounds priority)
    MAX_DURATION_FROM_LAST_SND_MESSAGE_NOTICE = 30; //Maximum time in ms from lsat message notite. To avoid 'echo' effect for multiple messages at one time
  
  
  { TKMSoundPlayer }
  