Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 02.07.2009, 18:44
alexpro вне форума Посмотреть профиль Отправить личное сообщение для alexpro Найти все сообщения от alexpro
  № 1  
Ответить с цитированием
alexpro
 
Аватар для alexpro

Регистрация: Jul 2005
Сообщений: 116
По умолчанию Включение и выключение звука

Дорогие друзья!

У меня к разным кадрам присвоены разные музыкальные файлы (из библиотеки). При этом проигрывается фоновая музыка из другого клипа (на уровень выше).

Вопрос:
Как сделать так, чтобы при переходе на кадр со звуком, звук из первого кадра отключался, но фоновая музыка не переставала играть?

Пробовал stopAllSounds но тогда и фоновая музыка перестает играть.
А если _this.stopAllSounds то не работает...

Добавлено через 1 минуту
Как присвоить stopAllSounds к определенному кадру?

Старый 02.07.2009, 19:11
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 2  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Добавлено через 1 минуту
Цитата:
Сообщение от alexpro Посмотреть сообщение
У меня к разным кадрам присвоены разные музыкальные файлы (из библиотеки).
Если понять эту фразу так, что у вас звук в кадре начинает проигрываться не программно, без использования объекта Sound(), а с помощью синхронизации на вкладке фрейма "Properties", то используйте синхронизацию "Stop" для конкретного звука.


Последний раз редактировалось mooncar; 02.07.2009 в 19:15.
Старый 02.07.2009, 19:23
alexpro вне форума Посмотреть профиль Отправить личное сообщение для alexpro Найти все сообщения от alexpro
  № 3  
Ответить с цитированием
alexpro
 
Аватар для alexpro

Регистрация: Jul 2005
Сообщений: 116
Да, без использования Sound().
Дело в том, что например звук находится в кадре 1 и проигрывается, когда таймлайн находится в этом кадре. Потом я перехожу в кадр 10 gotoAndStop. И в кадре 10 уже вставлен другой звук. Могу ли я использовать синхронизацию Stop в таком случае?

Старый 02.07.2009, 19:37
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 4  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Можете. Только вам для этого потребуется два слоя ключевых кадров. В основном, старом слое, звуки будут стартованы, а в дополнительных кадрах на тех же позициях таймлайна - "Stop" для предыдущего звучащего.
А лучше всего - забудьте об этом способе и сделайте все по-человечески, через объект Sound(), и тогда все будет работать с помощью кода. Поверьте, час поразбираетесь и всё, и никаких проблем на будущее с количеством звуковых роликов - любой звук можно останавливать/стартовать в произвольный момент времени. Половину приеморв работы со звуком с помощью кода вы освоите за этот час. Тем более тема ваша в ветке Action Script, а изначально у вас о нем очень косвенно.


Последний раз редактировалось mooncar; 02.07.2009 в 19:40.
Старый 02.07.2009, 19:42
alexpro вне форума Посмотреть профиль Отправить личное сообщение для alexpro Найти все сообщения от alexpro
  № 5  
Ответить с цитированием
alexpro
 
Аватар для alexpro

Регистрация: Jul 2005
Сообщений: 116
Скажите, а как это можно сделать? Или есть ли какой-то пример?

Добавлено через 33 секунды
я имею ввиду через объект Sound()

Старый 02.07.2009, 19:44
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 6  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
1. В библиотеке задайте звукам идентификаторы для звуков, чтобы AS "знал" их.
Для этого щелкните правой кнопкой мыши на звуке в библиотеке, выбирете "Linkage", галочку на "Export for AS" и "Expoert in first frame", а в поле "Identifier" напишите соответственно для каждого звука свой идентификатор, например "fon_id", "zvuk1_id", "zvuk2_id".

2. Потом в начале ролика напишите такой код:
Код AS1/AS2:
this.createEmptyMovieClip("sound1_mc", this.getNextHighestDepth()); 
this.createEmptyMovieClip("sound2_mc", this.getNextHighestDepth()); 
this.createEmptyMovieClip("sound3_mc", this.getNextHighestDepth()); 
 
var zvuk_fon:Sound = new Sound(sound1_mc);
zvuk_fon.attachSound("fon_id");
 
var zvuk1:Sound = new Sound(sound2_mc);
zvuk1.attachSound("zvuk1_id");
 
var zvuk2:Sound = new Sound(sound3_mc);
zvuk2.attachSound("zvuk2_id");
Тут же в первом кадре стартуете фоновый звук:
Код AS1/AS2:
zvuk_fon.start();
3. В нужном кадре стартуете звук 1:
Код AS1/AS2:
zvuk1.start();
В другом его останавливаете и стартуете другой звук:
Код AS1/AS2:
zvuk1.stop();
zvuk2.start();
И т.д.

Теперь также можно менять громкость с помощью метода setVolume, и еще много чего делать.. почитайте о Sound() в хелпе.


Последний раз редактировалось mooncar; 02.07.2009 в 20:08.
Старый 02.07.2009, 20:54
alexpro вне форума Посмотреть профиль Отправить личное сообщение для alexpro Найти все сообщения от alexpro
  № 7  
Ответить с цитированием
alexpro
 
Аватар для alexpro

Регистрация: Jul 2005
Сообщений: 116
Большое спасибо Mooncar! Все работает супер!

Старый 02.07.2009, 21:11
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 8  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Ага.. я свой первый проект флешевский тоже мучал с использованием звука в кадрах.. но к счастью, быстро понял, если нужно гибко управлять звуком, то именно через Sound().

Старый 02.02.2010, 15:07
inco_nj вне форума Посмотреть профиль Отправить личное сообщение для inco_nj Посетить домашнюю страницу inco_nj Найти все сообщения от inco_nj
  № 9  
Ответить с цитированием
inco_nj
 
Аватар для inco_nj

Регистрация: Jan 2008
Адрес: Нижний Новгород
Сообщений: 21
Отправить сообщение для inco_nj с помощью ICQ
А подскажите, плз, как зациклить проигрывание трека?

Старый 02.02.2010, 15:15
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 10  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Код AS1/AS2:
this.createEmptyMovieClip ('bgs_mc', this.getNextHighestDepth()); 
 
var bgs:Sound = new Sound (bgs_mc);
bgs.attachSound('bgs_id');
bgs.onSoundComplete =  startBgSound; //строка, назначающая зацикливание
 
startBgSound (); //начальный старт
 
function  startBgSound () {
   bgs.play();
}


Последний раз редактировалось mooncar; 02.02.2010 в 15:20.
Создать новую тему Ответ Часовой пояс GMT +4, время: 23:53.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 23:53.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.