Skip to content

Commit

Permalink
Merge pull request #93 from einaskoi/einar/Audio
Browse files Browse the repository at this point in the history
implement functionality for audio and sound effects
  • Loading branch information
peretr authored May 13, 2026
2 parents de2f531 + a4fe00d commit f4a3035
Show file tree
Hide file tree
Showing 4 changed files with 56 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package edu.ntnu.idi.idatt2003.gruppe42.Audio;

import javafx.scene.media.AudioClip;

import java.util.EnumMap;
import java.util.Map;

public class AudioManager {

private AudioManager instance = new AudioManager();
private Map<SoundEffect, AudioClip> sounds = new EnumMap<>(SoundEffect.class);
private double volume = 1.0;

public AudioManager() {

for (SoundEffect effect : SoundEffect.values()) {

AudioClip clip = new AudioClip(
getClass()
.getResource(effect.getPath())
.toExternalForm()
);

sounds.put(effect, clip);
}
}

public AudioManager getInstance() {
return instance;
}

public void play(SoundEffect sound) {
AudioClip audioClip = sounds.get(sound);

if (audioClip != null) {
audioClip.play(volume);
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package edu.ntnu.idi.idatt2003.gruppe42.Audio;

public enum SoundEffect {

OPEN_APP("/Audio/mouse_click.wav"),
CLOSE_APP("/Audio/mouse_click.wav");

private String path;

SoundEffect(String path) {
this.path = path;
}

public String getPath() {
return path;
}
}
File renamed without changes.
Binary file removed src/main/resources/Sounds/confirm_transaction.wav
Binary file not shown.

0 comments on commit f4a3035

Please sign in to comment.