public static Boolean PlaySoundInstant(String SFXIndex, Boolean Loop) { if (Mute | !SFXDirectory.ContainsKey(SFXIndex.ToUpper())) { return(false); } SoundEffectInstance LocalSound = ((SoundEffect)SFXDirectory[SFXIndex.ToUpper()]).CreateInstance(); LocalSound.Volume = GlobalVolume; LocalSound.IsLooped = Loop; LocalSound.Play(); ActiveSounds.Add(LocalSound); return(true); }
/// <summary> /// Constructor. /// </summary> /// <param name="source">The SFML Sound object.</param> /// <param name="complete">Optional callback function for when the sound finishes playing.</param> public Sfx(Sound source, OnComplete complete = null) : base(source) { this.Complete = complete; ActiveSounds.Add(this); }