Compare commits

...

2 Commits

Author SHA1 Message Date
Jérôme BEDIER ee4b64f6e1 rename class 2025-05-22 21:21:19 +02:00
Jérôme BEDIER 42074cfe75 sound system implemented when king in check - Exterminate 2025-05-22 21:19:43 +02:00
3 changed files with 22 additions and 0 deletions

BIN
exterminate.wav Normal file

Binary file not shown.

View File

@ -570,6 +570,7 @@ public class Board {
public boolean isKingInCheck(boolean isWhite) {
// First, find the king's position
Piece king = findKing(isWhite);
soudEffect soundPlayer = new soudEffect();
if (king == null) {
// 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
for (Move move : moves) {
if (move.getToX() == kingX && move.getToY() == kingY) {
soundPlayer.playCheckSound();
return true; // King is in check
}
}

View File

@ -0,0 +1,20 @@
package backend;
import javax.sound.sampled.*;
import java.io.File;
import java.io.IOException;
public class soudEffect {
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();
}
}
}