остановка звука без остановки BGM AS3 - PullRequest
0 голосов
/ 25 декабря 2011

Flash Pro.как 3.0.
анимация.
почти нет кодов, кроме концов сцен, имеющих:

import flash.media.SoundMixer;
if(SoundMixer.areSoundsInaccessible() == false)
{
    SoundMixer.stopAll();
}
else
{
  trace("There are inaccessible sounds.");
}

и в конце анимации, код кнопки воспроизведения.

так ...
я получилсцена, с этим конкретным BGM,
отдельный слой кадра.
и звуки на другом слое.
что я хочу - это остановить звук без остановки фоновой музыки.
(да, я знаю, что приведенный выше код не будет работать, поскольку он останавливает все звуки)

1 Ответ

0 голосов
/ 26 декабря 2011

На мой взгляд, лучший способ управления звуками на временной шкале:

1) во флеш-библиотеке проекта щелкните правой кнопкой мыши по звуку и выберите пункт контекстного меню «Свойства ...» ->

Открылось окно «Свойства звука» ->

, перейдите на вкладку «ActionScript» ->

, включите «Экспорт для ActionScript» ->

введите имя некоторого класса в "Ввод текста «Класс» (например, «MySound1») ->

нажмите «ОК»

Теперь звук доступен из ActionScript

2) удалить звук с временной шкалы

3) когда вам нужно начать воспроизведение этого звука, используйте код

var mySound:Sound = new MySound1();
var mySoundChannel:SoundChannel = mySound.play(0);

, где MySound1 - это имя класса, которое вы задали в окне «Свойства звука».

, когда вам нужно остановить использование кода звука

mySoundChannel.stop();

Используя этот способ, вы сможете запускать / останавливать любые звуки, не приглушая другие звуки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...