All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.lessvoid.nifty.slick2d.sound.SlickSoundDevice Maven / Gradle / Ivy

There is a newer version: 1.4.3
Show newest version
package de.lessvoid.nifty.slick2d.sound;

import de.lessvoid.nifty.slick2d.loaders.SlickMusicLoaders;
import de.lessvoid.nifty.slick2d.loaders.SlickSoundLoaders;
import de.lessvoid.nifty.sound.SoundSystem;
import de.lessvoid.nifty.spi.sound.SoundDevice;
import de.lessvoid.nifty.spi.sound.SoundHandle;
import de.lessvoid.nifty.tools.resourceloader.NiftyResourceLoader;

import javax.annotation.Nonnull;

/**
 * Slick Implementation of the SoundLoader.
 *
 * @author Martin Karing <[email protected]>
 */
public final class SlickSoundDevice implements SoundDevice {
  /**
   * Load a music piece.
   *
   * @param soundSystem soundSystem
   * @param filename    file to load
   * @return the music piece
   */
  @Override
  public SoundHandle loadMusic(@Nonnull final SoundSystem soundSystem, @Nonnull final String filename) {
    return SlickMusicLoaders.getInstance().loadMusic(soundSystem, filename);
  }

  /**
   * Load a sound.
   *
   * @param soundSystem soundSystem
   * @param filename    filename of sound
   * @return handle to sound
   */
  @Override
  public SoundHandle loadSound(@Nonnull final SoundSystem soundSystem, @Nonnull final String filename) {
    return SlickSoundLoaders.getInstance().loadSound(soundSystem, filename);
  }

  @Override
  public void setResourceLoader(@Nonnull final NiftyResourceLoader resourceLoader) {
    // no need for the resource loader
  }

  /**
   * Update the sound device.
   */
  @Override
  public void update(final int delta) {
    // nothing to do
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy