diff --git a/src/main/java/net/op/Client.java b/src/main/java/net/op/Client.java index 08c9e98..b92244e 100644 --- a/src/main/java/net/op/Client.java +++ b/src/main/java/net/op/Client.java @@ -205,9 +205,8 @@ public void stop(boolean force) { // Save settings Config.save(); - // Stop all the sounds - SoundManager.MUSIC = false; - SoundManager.stopSounds(); + // Disable soundManager + SoundManager.shutdown(); // Destroy display destroyDisplay(); diff --git a/src/main/java/net/op/sound/SoundManager.java b/src/main/java/net/op/sound/SoundManager.java index bd5e379..dcf3024 100644 --- a/src/main/java/net/op/sound/SoundManager.java +++ b/src/main/java/net/op/sound/SoundManager.java @@ -35,13 +35,17 @@ public static void update() { int r = (int) (System.currentTimeMillis() / 1000 % TIMEOUT); if (r == 0) { - List sounds = Tracks.get("Menu Sounds").getSounds().toList(); - int index = new Random().nextInt(sounds.size()); - playSound(sounds.get(index)); + playRandomSound(); } } + public static void playRandomSound() { + List sounds = Tracks.get("Menu Sounds").getSounds().toList(); + int index = new Random().nextInt(sounds.size()); + playSound(sounds.get(index)); + } + @SuppressWarnings("deprecation") public static void stopSounds() { if (currentSoundThread == null) @@ -96,10 +100,12 @@ public static boolean playSound(Sound sound) { public static void enable() { MUSIC = true; + SoundManager.playRandomSound(); } - public static void disable() { + public static void shutdown() { MUSIC = false; + SoundManager.stopSounds(); } }