Piszę prostą grę. I potrzebuje aby jeden clip był odtwarzany ile kroć zachodzi dane zdarzenie.Mam napisaną klasęimport java.io.File;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import org.newdawn.easyogg.OggClip;

public class mgine {
private final float max_sound=0.85f;
private Clip clip1;
private int index=0;
private OggClip muzyka[];
private static OggClip dzwieki;
private String nazwy[]={"01.ogg","02.ogg","03.ogg","04.ogg","05.ogg","06.ogg"};
public mgine(){
muzyka=new OggClip[6];
//dzwieki=new OggClip[6];
try {
clip1 = AudioSystem.getClip();
clip1.open(AudioSystem.getAudioInputStream(new File("grazbiera.wav")));
muzyka[0]=new OggClip("01.ogg");
muzyka[1]=new OggClip("02.ogg");
muzyka[2]=new OggClip("03.ogg");
muzyka[3]=new OggClip("04.ogg");
muzyka[4]=new OggClip("05.ogg");
muzyka[5]=new OggClip("06.ogg");
for(int i=0;i<6;i++){
muzyka[i].loop();
muzyka[i].setGain(0);
}
muzyka[0].setGain(max_sound);

} catch (Exception e) {
	e.printStackTrace();
}

}
public void play(){
muzyka[index].setGain(0);
index=(index+1)%6;
muzyka[index].setGain(max_sound);

}

public void zbierz(){
clip1.start();

}

}

I o tyle gdzie użyłem zewnętrznej biblioteki EasyOgg do odtwarzania muzyki to działa to elegancko. Ale się to nie nadaje do zwykłych dźwięków. Więc postanowiłem wykorzystać Clip. Ale tu mam problem gdyż tylko działa raz przy wywołaniu zbierz().
Każde kolejne wywołanie jest "głuche".
Próbowałem "stopować" Ale też nie daję rezultatów. Wie ktoś jak sprawić aby dźwięk był wywoływany ilekroć metoda zbierz() jest wywoływana?</quote>