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

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

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

Регистрация: Nov 2006
Сообщений: 93
По умолчанию И снова здравствуйте: preloader+attachSound

Тем с таким названием прочитал штук двадцать, а одвед не нашёл, так что не пинать.
Есть основной swf файл - menu.swf - там красота и икебана, десяток классов и сотни строчек кода. Всё работает хорошо.
В library есть звуковой файл snd_mouseover ( экспортирован для ActionScript).
При наведение мышки на элемент меню происходит
Код:
		//Play Sound
		var my_sound:Sound = new Sound();
		my_sound.attachSound("snd_mouseover");
		my_sound.setVolume(50);
		my_sound.start();
Здесь никаких проблем нет.

Сушествует второй swf файл - preloader.swf, который загружает в себя menu.swf. Так вот после этого звуки не работают.
Есть у меня подозрение, что как-то меняется путь к библиотеке после загрузки во внешний preloader. Но функции типа attachMovie работают нормально, то есть вроде бы путь к библиотеке не изменился.
Может в чём-то другом проблема?

Старый 31.05.2007, 23:17
this.create вне форума Посмотреть профиль Отправить личное сообщение для this.create Найти все сообщения от this.create
  № 2  
Ответить с цитированием
this.create

Регистрация: Feb 2007
Сообщений: 264
Код:
var mc:MovieClip = this.createEmptyMovieClip('mc', this.getNextHighestDepth());
var my_sound:Sound = new Sound(mc);
my_sound.attachSound("sound");
my_sound.setVolume(50);
my_sound.start();
Предположение такое: объект звука создается на руте прелоадера, а запускается из рута загруженного клипа.
Уточняю: вы прописываете для объекта класса Sound target рут прелоадера (самый главный рут фильма). Что делает Sound? Он ищет звук для аттача в библиотеке прелоадера. Попробуйте импортните ваш звук в библиотеку прелоадера - и ваш код заработает.


Последний раз редактировалось this.create; 31.05.2007 в 23:41.
Старый 31.05.2007, 23:54
Ляксей вне форума Посмотреть профиль Отправить личное сообщение для Ляксей Найти все сообщения от Ляксей
  № 3  
Ответить с цитированием
Ляксей

Регистрация: Nov 2006
Сообщений: 93
Да, похоже это так и есть. Когда я вставляю в библитеку прелоадера звуки , всё работает хорошо.
А как мне для
my_sound.attachSound("sound");
уточнить из какой библиотеки брать звуки.
_lockroot = true;
не помогает. У меня в коде везде используется ссылка на локальный рут, но как воспользоваться его библиотекой для attachSound что-то не могу понять. Это вообще возможно?

Спасибо, разобрался
Вот так работает
Код:
var my_sound:Sound = new Sound(GLB_data.m_local_root);
где GLB_data.m_local_root - ссылка на рут menu.swf


Последний раз редактировалось iNils; 01.06.2007 в 05:42.
Старый 01.06.2007, 00:15
this.create вне форума Посмотреть профиль Отправить личное сообщение для this.create Найти все сообщения от this.create
  № 4  
Ответить с цитированием
this.create

Регистрация: Feb 2007
Сообщений: 264
Цитата:
Сообщение от Ляксей
Спасибо, разобрался
Вот так работает
Код:
var my_sound:Sound = new Sound(GLB_data.m_local_root);
где GLB_data.m_local_root - ссылка на рут menu.swf
Ну если очень хотите локальный рут, то, пожалуйста:
Код:
var my_sound:Sound = new Sound(this);
или ссылку на локальный рут.


Последний раз редактировалось this.create; 01.06.2007 в 00:18.
Старый 01.06.2007, 03:17
Ляксей вне форума Посмотреть профиль Отправить личное сообщение для Ляксей Найти все сообщения от Ляксей
  № 5  
Ответить с цитированием
Ляксей

Регистрация: Nov 2006
Сообщений: 93
Дело в том, что this - это у меня вообще в классе, который не унаследован от MovieClip. A m_local_root я ввёл как замену для _root, когда ещё не знал про _lockroot свойство.

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:31.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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