Шаг 1: нелепый мувик.
Там, где у вас идут кадры с локациями игры, добавляем слой. Ну, чтобы они шли как бы параллельно. На новом слое делаем мувик. Не имеет значения с какой графикой. Я поставила черный прямоугольник. Главное, чтобы он был вне обзора игры и ничего не заслонял, да и вообще не особо мозолил глаза своим присутсвием.
Шаг 2. первые звуки
Открываем этот мувик, внутри будет у нас музыкальная логика. Ставим туда на проигрывание мелодию, которая будет использоваться в игре. Для этого в свойствах кадра проставляем нужную музыку:
Конечно, предварительно нужно загрузить нужную музыку в библиотеку - это само собой. И не забываем в свойствах кадра проставить также "Старт" и "по кругу". Я уже как-то на досуге писала о музыкальных свойствах кадра, можете вспомнить.
Шаг 3 волшебное слово
Теперь небольшие элементы программирования. Прописываем в действиях данного кадра элементарнейший код :
stop();
Шаг 4 останавливаем другую музыку
Теперь, как вы догадались, на другой кадр нужно поставить другую музыку. Но давайте не будем торопиться. Дело в том, что если мы сейчас понаставим этих музык, то дальше начнет глючить, как показала практика.
Сначала добавляем перед тем кадром с музыкой столько кадров, сколько у вас есть еще музыкальных тем. Например, в "Котенке" всего три музыкальные темы, поэтому я ставлю впереди еще два ключевых кадра. В их свойствах прописываем все другие музыкальные темы, только ставим их не на запуск, а на замолкание:
Это нужно для того, чтобы перед тем, как заиграет нужная музыкальная тема, выключились предыдущие. Никакие скриптовые остановки на этих кадрах не нужны!!!
Шаг 5 добавляем композиции
Вот теперь можете добавлять и другие музыкальные темы по аналогии: сначала - выключение всех других тем, потом - установка нужной темы и остановка проигрывания кадров дальше.
После этой продцедуры слой внутри музыкального мувика у меня приобрел вот такой вид:
Шаг 6 управление звуковым мувиком
Теперь выходим из мувика. На том слое, где он у нас находится, будем прописывать вызов нужных мелодий на нужных кадрах:
MusicMuvik.gotoAndPlay(1);
где MusicMuvik - имя этого мувика, у вас оно может быть более грамотным. В данном случае мы включили первую композицию из списка.
Обратите внимание, что мы ставим gotoAndPlay, а не gotoAndStop. Это сделано, чтобы пробежаться сначала по всем кадрам, где выключается вся другая ненужная музыка, а потом уже он сам остановится, когда дойдет до проигрывания: мы же там поставили stop!
Как показала практика, если мы выключаем ту музыку, которая не звучит, то ничего страшного не происходит, так что не стоит бояться, что мы так перестраховались. Возможно, можно было бы проверять, какая музыка сейчас играет, и выключать ее, или выключать как-то всё целиком. Но я не стала париться и сделала так. На мой взгляд, так проще.
Заключение.
Можно вызвать проигрывание звука и не на кадрах, а исходя из других нужных вам ключевых моментов игры. Но вызов снова будет осуществляться аналогично через этот волшебный мувик по обращению на соответствующий кадр.