저는 간단한 게임을 만들고 있어요, 화살표 키로 움직일 수있는 붉은 색 사각형입니다. 피니시 오브젝트를 만들었습니다. 이제, "플레이어"가 "피니시 오브젝트"와 교차하면 사운드가 재생되지만 사운드는 매번 재생됩니다. 나는 Thread.sleep()과 wait()를 시도했지만, 그것은 저의 게임 전체를 잠들게 만들었습니다. 내시 소리가 방법 :사운드 재생 사이의 지연?
public void playSound(String filename) throws IOException{
InputStream in = new FileInputStream(filename);
AudioStream as = new AudioStream(in);
AudioPlayer.player.start(as);
}
내 playerfinishing의 교차 :
//PLAYER1 LEVEL FINISHING
if(player.getBounds().intersects(levelfinish.getBounds())){
message = "A winner is you!";
try {
playSound("D:/BadGame/Sounds/winner.wav");
} catch(Exception ex){
ex.printStackTrace();
}
}
메시지가 화면의 중앙에 표시 단지 문자열, 모든 작품,하지만 너무 지연의 어떤 종류를 필요로 사운드는 끊임없이 재생되지 않지만 각 10 초 후 또는 교차 할 때만 한 번 재생됩니다. 너희들이 나에게이 일을하는 방법에 대한 단서를 줄 수 있니? 감사!
음, 예제가 제대로 작동하지 않았습니다. 그것은 여전히 노래를 연주합니다. 내가 들어 왔을 때 서로 빨리 연주 한 것처럼. 코드를 이해하지만 효과가없는 것 같습니다. – Stan
분명히해야합니다. -이 코드가 모든 틱이라고하는 함수에 있으면 변수를 전역으로 만들어야합니다. 매번 변수가 변경되지 않아야합니다. – Nate
그래, 나는 도움을 주셔서 감사합니다, 지금 완벽하게 작동합니다. – Stan