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

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

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

Регистрация: Apr 2010
Сообщений: 7
По умолчанию зацикленная функция

кто про что, а я всё про баню :о)

имеем:
1. массив, куда поместили ссылки на музыкальные треки.
2. функцию, которая вызывает метод лоадсаунд

Код AS1/AS2:
function playSong(mp3) {
	sound = new Sound(); // создаём новый обьект класса Sound
	sound.loadSound(url[mp3], true);
собственно надо:

при нажимании на кнопку

Код AS1/AS2:
var n=0;
play_button.onRelease = function():Void {
	playSong(n);
 
sound.onSoundComplete = function():Void {
 
n++;
	playSong(n);
}}
сего скрипта хватает, чтобы подгрузить и сыграть два трека из плей листа. Как зациклить функцию playSong(n), чтобы проиграли все треки, сколь бы их не было

Старый 22.04.2010, 21:35
AzagThoth вне форума Посмотреть профиль Отправить личное сообщение для AzagThoth Найти все сообщения от AzagThoth
  № 2  
Ответить с цитированием
AzagThoth
 
Аватар для AzagThoth

блогер
Регистрация: Sep 2009
Сообщений: 309
Записей в блоге: 4
Отправить сообщение для AzagThoth с помощью ICQ
Код AS1/AS2:
function playSong(mp3) {
	sound = new Sound(); // создаём новый обьект класса Sound
	sound.loadSound(url[mp3], true);
Ужасно не технично. Так лучше не делать. Что касается n то оно расти должно поидее. Потрейсите. В общем это какой-то ужас на самом деле Не понятно почему sound.onSoundComplete Вы в коде кнопки описываете.
__________________
Играй. Это жизнь.
Всё повторяется. Играй.

Старый 23.04.2010, 04:59
coreras вне форума Посмотреть профиль Отправить личное сообщение для coreras Найти все сообщения от coreras
  № 3  
Ответить с цитированием
coreras

Регистрация: Apr 2010
Сообщений: 7
что касается n, оно итак растет, именно по этому играется вторая песня. Но, чтобы сыграть третью, надо еще раз повторить код

Код AS1/AS2:
sound.onSoundComplete = function():Void {
 
n++;
	playSong(n);
еще раз. для четвертой - еще, и т.д.

"Не понятно почему sound.onSoundComplete" - мне тоже непонятно. Но, дело в том, что не в коде кнопки этот (не знаю как называется, класс, тег, команда:о) это.... скажем......... событие... onSoundComplete не работает. Пёс его знает почему :о)

Добавлено через 38 секунд
насчет "потрейсие" хотелось бы подробнее :о)

Добавлено через 7 минут
помнится, в бейске такое было. Когда тра-та-та сделается, гоуту туда. Вот бы в АС тоже самое, тока я не в курсе как это будет выглядеть :о)

Добавлено через 25 минут
пробовал gotoAndPlay function, не сработало

Старый 23.04.2010, 06:27
AzagThoth вне форума Посмотреть профиль Отправить личное сообщение для AzagThoth Найти все сообщения от AzagThoth
  № 4  
Ответить с цитированием
AzagThoth
 
Аватар для AzagThoth

блогер
Регистрация: Sep 2009
Сообщений: 309
Записей в блоге: 4
Отправить сообщение для AzagThoth с помощью ICQ
Вот так правильно делать.
Код AS1/AS2:
var n:Number=0;
createEmptyMovieClip("clip",getNextHighestDepth());
var snd:Sound=new Sound(clip);
playSong(n);
function playSong(n:Number):Void{
	snd.loadSound(arr[n],false);
}
snd.onLoad=function(flagComplete:Boolean){
	if(flagComplete==true){
		snd.start();
	}
}
 
snd.onSoundComplete=function():Void{
	n++;
	playSong(n);
}
Добавлено через 1 минуту
Только n не забудьте сравнивать с длинной массива, что бы не получить undefined однажды.
__________________
Играй. Это жизнь.
Всё повторяется. Играй.

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

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

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


 


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


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