summary refs log tree commit diff stats
path: root/src/com/fourisland/fourpuzzle/Audio.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/fourisland/fourpuzzle/Audio.java')
-rwxr-xr-xsrc/com/fourisland/fourpuzzle/Audio.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/com/fourisland/fourpuzzle/Audio.java b/src/com/fourisland/fourpuzzle/Audio.java index b364342..c8cd75b 100755 --- a/src/com/fourisland/fourpuzzle/Audio.java +++ b/src/com/fourisland/fourpuzzle/Audio.java
@@ -6,12 +6,15 @@
6package com.fourisland.fourpuzzle; 6package com.fourisland.fourpuzzle;
7 7
8import com.fourisland.fourpuzzle.util.ObjectLoader; 8import com.fourisland.fourpuzzle.util.ObjectLoader;
9import java.util.concurrent.Executor;
10import java.util.concurrent.Executors;
9import java.util.logging.Level; 11import java.util.logging.Level;
10import java.util.logging.Logger; 12import java.util.logging.Logger;
11import javax.sound.midi.InvalidMidiDataException; 13import javax.sound.midi.InvalidMidiDataException;
12import javax.sound.midi.MidiSystem; 14import javax.sound.midi.MidiSystem;
13import javax.sound.midi.MidiUnavailableException; 15import javax.sound.midi.MidiUnavailableException;
14import javax.sound.midi.Sequencer; 16import javax.sound.midi.Sequencer;
17import javax.sound.sampled.Clip;
15 18
16/** 19/**
17 * 20 *
@@ -85,5 +88,19 @@ public class Audio {
85 } 88 }
86 } 89 }
87 90
91 private static Executor soundExecutor = Executors.newCachedThreadPool();
92 public static void playSound(String file)
93 {
94 final Clip temp = ObjectLoader.getSound(file);
95 temp.start();
96
97 soundExecutor.execute(new Runnable() {
98 public void run() {
99 temp.drain();
100 temp.stop();
101 }
102 });
103 }
104
88} 105}
89 106