better code

pull/424/head
Erick Zanardo 3 years ago
parent cb2104739c
commit 0d240bb8df

@ -101,18 +101,20 @@ class _LoopAudio extends _Audio {
required this.preCacheSingleAudio, required this.preCacheSingleAudio,
required this.loopSingleAudio, required this.loopSingleAudio,
required this.path, required this.path,
this.volume,
}); });
final PreCacheSingleAudio preCacheSingleAudio; final PreCacheSingleAudio preCacheSingleAudio;
final LoopSingleAudio loopSingleAudio; final LoopSingleAudio loopSingleAudio;
final String path; final String path;
final double? volume;
@override @override
Future<void> load() => preCacheSingleAudio(prefixFile(path)); Future<void> load() => preCacheSingleAudio(prefixFile(path));
@override @override
void play({double volume = 1}) { void play() {
loopSingleAudio(prefixFile(path), volume: volume); loopSingleAudio(prefixFile(path), volume: volume ?? 1);
} }
} }
@ -121,39 +123,25 @@ class _SingleLoopAudio extends _LoopAudio {
required PreCacheSingleAudio preCacheSingleAudio, required PreCacheSingleAudio preCacheSingleAudio,
required LoopSingleAudio loopSingleAudio, required LoopSingleAudio loopSingleAudio,
required String path, required String path,
double? volume,
}) : super( }) : super(
preCacheSingleAudio: preCacheSingleAudio, preCacheSingleAudio: preCacheSingleAudio,
loopSingleAudio: loopSingleAudio, loopSingleAudio: loopSingleAudio,
path: path, path: path,
volume: volume,
); );
bool _playing = false; bool _playing = false;
@override @override
void play({double volume = 1}) { void play() {
if (!_playing) { if (!_playing) {
super.play(volume: volume); super.play();
_playing = true; _playing = true;
} }
} }
} }
class _BackgroundMusicAudio extends _SingleLoopAudio {
_BackgroundMusicAudio({
required PreCacheSingleAudio preCacheSingleAudio,
required LoopSingleAudio loopSingleAudio,
}) : super(
preCacheSingleAudio: preCacheSingleAudio,
loopSingleAudio: loopSingleAudio,
path: Assets.music.background,
);
@override
void play({double volume = .6}) {
super.play(volume: volume);
}
}
class _RandomABAudio extends _Audio { class _RandomABAudio extends _Audio {
_RandomABAudio({ _RandomABAudio({
required this.createAudioPool, required this.createAudioPool,
@ -308,9 +296,11 @@ class PinballAudioPlayer {
path: Assets.sfx.cowMoo, path: Assets.sfx.cowMoo,
duration: const Duration(seconds: 2), duration: const Duration(seconds: 2),
), ),
PinballAudio.backgroundMusic: _BackgroundMusicAudio( PinballAudio.backgroundMusic: _SingleLoopAudio(
preCacheSingleAudio: _preCacheSingleAudio, preCacheSingleAudio: _preCacheSingleAudio,
loopSingleAudio: _loopSingleAudio, loopSingleAudio: _loopSingleAudio,
path: Assets.music.background,
volume: .6,
), ),
}; };
} }

Loading…
Cancel
Save