2023-05-04
音を鳴らすにはflame_audioを使います。 これはaudioplayersをラップしたものです。
公式ドキュメント https://docs.flame-engine.org/latest/bridge_packages/flame_audio/audio.htmlflame_audio
を導入します。
flame_audio: ^2.1.7
assets/audio
にhit.wav
を入れ、pubspec.yaml
でも指定します。
# <sprite>
assets:
- assets/images/
# </sprite>
- assets/audio/
ボタンを押したときにFlameAudio.play
で音を鳴らします。
import 'package:flame/components.dart';
import 'package:flame/game.dart';
import 'package:flame/input.dart';
import 'package:flame_audio/flame_audio.dart';
import 'package:flutter/material.dart';
class SoundGame extends FlameGame {
@override
Future<void> onLoad() async {
super.onLoad();
await add(
ButtonComponent(
position: Vector2(size.x * 0.5, size.y * 0.5),
onPressed: () => FlameAudio.play('hit.wav'),
button: TextComponent(
text: 'Play',
textRenderer: TextPaint(
style: const TextStyle(
fontSize: 32,
color: Colors.white,
),
),
),
buttonDown: TextComponent(
text: 'Play',
textRenderer: TextPaint(
style: const TextStyle(
fontSize: 32,
color: Colors.grey,
),
),
),
anchor: Anchor.center,
),
);
}
}
これでサウンドが再生されます。
© 2023 tnantoka