add Sound in to Thread #5

Merged
lgc merged 5 commits from ole into main 2024-11-12 14:00:35 +00:00
4 changed files with 55 additions and 11 deletions

BIN
libs/jlayer-1.0.3.jar Normal file

Binary file not shown.

36
makefile Normal file
View File

@ -0,0 +1,36 @@
MAIN_CLASS := HalloSchiffeVersenken
JAR_NAME := schiffeVersenken.jar
SRC_DIR := src
OUT_DIR := bin
LIB_DIR := libs
JC := javac
JCFLAGS := -d $(OUT_DIR)/ -cp "$(LIB_DIR)/*"
JR := java
SEPERATOR := :
ifeq ($(OS),Windows_NT)
SEPERATOR := ;
endif
.SUFFIXES: .java
.PHONY: classfiles clean
classfiles: $(SRC_DIR)/*
$(JC) $(JCFLAGS) $(SRC_DIR)/*
jar: classfiles
jar --create --file=$(OUT_DIR)/$(JAR_NAME) --main-class=$(MAIN_CLASS) -C $(OUT_DIR)/ .
test-jar: jar
# $(JR) -cp "$(OUT_DIR)/:$(LIB_DIR)/*" $(MAIN_CLASS)
$(JR) -jar $(OUT_DIR)/$(JAR_NAME)
test: classfiles
$(JR) -cp "$(OUT_DIR)$(SEPERATOR)$(LIB_DIR)/*" $(MAIN_CLASS)
clean:
rm $(OUT_DIR)/*.class

View File

@ -7,9 +7,9 @@ public class HalloSchiffeVersenken {
System.out.println("sound");
SoundHandler.playSound("hit");
Thread.sleep(3000);
System.out.println("sound");
SoundHandler.playSound("hit");
Thread.sleep(10000);
SoundHandler.setSoundOn(false);
System.out.println("sound off");
SoundHandler.playSound("hit");

View File

@ -10,22 +10,30 @@ import java.util.Map;
public class SoundHandler {
private static boolean soundOn = true;
// Wenn fehler beim erstellen von .jar mit sound hier gucken
private static HashMap<String, String> sounds = new HashMap<String, String>(Map.of(
"hit", "~/../Sound/water-drip.mp3"
"hit", "./Sound/water-drip.mp3"
));
public static void playSound(String soundName) {
if (soundOn) {
try {
Player player = new Player(new FileInputStream(sounds.get(soundName)));
player.play();
} catch (JavaLayerException | FileNotFoundException e) {
System.out.println("dslkfsfnsldfnlsnfsdnölscls");
e.printStackTrace();
}
new Thread(new Runnable() {
@Override
public void run() {
try {
Player player = new Player(new FileInputStream(sounds.get(soundName)));
player.play();
} catch (JavaLayerException | FileNotFoundException e) {
e.printStackTrace();
}
}
}).start();
}
}
static void add(String soundName, String path){
sounds.put(soundName, path);
}