効果音・BGM を停止する
音声は g.AudioPlayContext#stop()
メソッドを用いて停止することができます。
凡例
javascript
const bgm1Asset = scene.asset.getAudio("/audio/bgm1"); // ファイルパスが "/audio/bgm1" の音声アセットとする
const bgm1 = g.game.audio.create(bgm1Asset); // bgm1 の AudioPlayContext を作成する
bgm1.play(); // bgm1 の AudioPlayContext を再生する
bgm1.stop(); // bgm1 の AudioPlayContext を停止する
特定の音声アセットの再生を止める場合は、 g.game.audio.create()
で作成した g.AudioPlayContext オブジェクトの g.AudioPlayContext#stop()
を実行します。 g.AudioPlayContext#play()
についてはこちらを参照してください。
利用例
次のコンテンツでは、「BGM」の矩形をクリックするとが BGM が再生されて、再生中に「BGM」の矩形を再度クリックすると BGM が停止されます。
詳細
特定の音声アセットの再生を止めるためには、その音声アセットを再生している g.AudioPlayContext
オブジェクトを取得する必要があります。このオブジェクトは g.game.audio.create()
で作成されます。
javascript
const bgm1Asset = scene.asset.getAudio("/audio/bgm1"); // "/audio/bgm1" が音声アセットのパスとする
const bgm1 = g.game.audio.create(bgm1Asset); // bgm1 の AudioPlayContext を作成する
bgm1.play(); // bgm1 の AudioPlayContext を再生する
作成した g.AudioPlayContext
オブジェクトの g.AudioPlayContext#stop()
を以下のように実行します。
javascript
bgm1.stop(); // アセット ID "bgm1" の音声アセットが停止される
音声アセットの利用に関する詳細は効果音・BGM を再生するの「詳細」セクションを参照してください。
AudioPlayer からの停止
g.AudioPlayer#stop()
でも音声アセットを再生することができます。akashic-engine@3.9.0
より前のバージョンでの音声アセットを停止する方法です。
javascript
const player = scene.asset.getAudio("/audio/bgm1").play(); // "/audio/bgm1" の再生と同時にそれを再生しているg.AudioPlayerオブジェクトが返ってくるので取得する
player.stop(); // アセット ID "bgm1" の音声アセットが停止する