sound system implemented when king in check - Exterminate
This commit is contained in:
parent
fd51f7932a
commit
42074cfe75
Binary file not shown.
|
|
@ -570,6 +570,7 @@ public class Board {
|
||||||
public boolean isKingInCheck(boolean isWhite) {
|
public boolean isKingInCheck(boolean isWhite) {
|
||||||
// First, find the king's position
|
// First, find the king's position
|
||||||
Piece king = findKing(isWhite);
|
Piece king = findKing(isWhite);
|
||||||
|
SoundPlayer soundPlayer = new SoundPlayer();
|
||||||
|
|
||||||
if (king == null) {
|
if (king == null) {
|
||||||
// If king not found (shouldn't happen in a valid chess game)
|
// If king not found (shouldn't happen in a valid chess game)
|
||||||
|
|
@ -595,6 +596,7 @@ public class Board {
|
||||||
// Check if any move can capture the king
|
// Check if any move can capture the king
|
||||||
for (Move move : moves) {
|
for (Move move : moves) {
|
||||||
if (move.getToX() == kingX && move.getToY() == kingY) {
|
if (move.getToX() == kingX && move.getToY() == kingY) {
|
||||||
|
soundPlayer.playCheckSound();
|
||||||
return true; // King is in check
|
return true; // King is in check
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
package backend;
|
||||||
|
|
||||||
|
import javax.sound.sampled.*;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
public class SoundPlayer {
|
||||||
|
public void playCheckSound() {
|
||||||
|
try {
|
||||||
|
// Replace "check.wav" with the path to your check sound file
|
||||||
|
File soundFile = new File("exterminate.wav");
|
||||||
|
AudioInputStream audioStream = AudioSystem.getAudioInputStream(soundFile);
|
||||||
|
Clip clip = AudioSystem.getClip();
|
||||||
|
clip.open(audioStream);
|
||||||
|
clip.start();
|
||||||
|
} catch (UnsupportedAudioFileException | IOException | LineUnavailableException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue