Показать сообщение отдельно
Старый 22.04.2007, 02:33
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 16  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Цитата:
Сообщение от sulsaram
Ролик выдаёт ошибку при нажатии любой из кнопок.
Когда нажать одну кнопку(например 2)- то оштибка выглядет: "_level0.b2"
Да это не ошибка, это trace() срабатывает..
поставьте два слеша в начале этой строки , то есть закомментируйте ее.
А, сорри, this для звука - это сам звук, а не кнопка.. Он не видит переменной. Счас подумаю..
Код:
stop();
var my_sound:Sound = new Sound(_root);
function btnOnPress(){
 //trace (this ); теперь это комментарий и не вызовется
 my_sound.attachSound(this.snd);
 my_sound.start(0);
 //создаем локальную переменную
 var frameToGo:Number = this.frameToGo;
 //это будет изнутри кнопки и все видно
 my_sound.onSoundComplete = function() {
  _root.gotoAndStop( frameToGo );
 // теперь все работает, потому что мы создаем функцию динамически
 // и frameToGo у нас локальный что и покажет следующая строка
  trace( "frameToGo: " + frameToGo  );//потом закомментируйте
 }
}
b1.snd = "s1"; b2.snd="s2"; b3.snd="s3";
b1.frameToGo = 3;
b2.frameToGo = 2;
b3.frameToGo = 2;// хоть 20, лишь бы кадров хватило
b1.onPress = b2.onPress = b3.onPress = btnOnPress;


Последний раз редактировалось Kikasso; 22.04.2007 в 02:38.