Moved away from singleton pattern

Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
This commit is contained in:
2026-03-17 20:24:39 +01:00
parent 4c28a66554
commit 55cf73f7f5
7 changed files with 70 additions and 47 deletions

View File

@@ -3,48 +3,52 @@ import 'package:wolf_3d_dart/wolf_3d_engine.dart';
import 'package:wolf_3d_flutter/wolf_3d.dart';
class FlutterAudioAdapter implements EngineAudio {
final Wolf3d wolf3d;
FlutterAudioAdapter(this.wolf3d);
@override
void playLevelMusic(WolfLevel level) {
Wolf3d.I.audio.playLevelMusic(level);
wolf3d.audio.playLevelMusic(level);
}
@override
void stopMusic() {
Wolf3d.I.audio.stopMusic();
wolf3d.audio.stopMusic();
}
@override
void playSoundEffect(int sfxId) {
Wolf3d.I.audio.playSoundEffect(sfxId);
wolf3d.audio.playSoundEffect(sfxId);
}
@override
void playMenuMusic() {
Wolf3d.I.audio.playMenuMusic();
wolf3d.audio.playMenuMusic();
}
@override
Future<void> init() async {
await Wolf3d.I.audio.init();
await wolf3d.audio.init();
}
@override
void dispose() {
Wolf3d.I.audio.dispose();
wolf3d.audio.dispose();
}
@override
Future<void> debugSoundTest() async {
Wolf3d.I.audio.debugSoundTest();
wolf3d.audio.debugSoundTest();
}
@override
WolfensteinData? get activeGame => Wolf3d.I.activeGame;
WolfensteinData? get activeGame => wolf3d.activeGame;
@override
set activeGame(WolfensteinData? value) {
if (value != null) {
Wolf3d.I.setActiveGame(value);
wolf3d.setActiveGame(value);
}
}
}