このアプローチではSoundChannel
、再生中のサウンドを停止するために使用できるオブジェクトへのリンクが失われます。2 つのことを行います。まず、一般に公開されているタイプの変数を作成し、 callSoundChannel
の結果値を割り当てAssets.gameLoop.play()
ます。次に、yourVariable.stop()
その音楽を停止する必要がある場所に a を配置します。ほとんどの場合、Assets
クラスで別の変数を使用します。ただし、セキュリティを強化するために、次のように、この変数のペアに対処する静的関数のペアを作成します。
private static var gameLoopChannel:SoundChannel;
private static var gameLoop:Sound=new gameLoopSound();
public static function playGameLoop():void {
if (gameLoopChannel) return;
gameLoopChannel=gameLoop.play();
}
public static function stopGameLoop():void {
if (!gameLoopChannel) return; // no sound is being played
gameLoopChannel.stop();
gameLoopChannel=null;
}