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

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

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

Регистрация: Nov 2009
Сообщений: 3
По умолчанию Как сделать паузу перед переходом на следующий кадр

Нужно сделать паузу перед переходом на следующий кадр. Таких кадров несколько.
В действия первого кадра вставляю следующее:
Код:
stop();
var mc=this;
var id=setInterval(function(){mc.play();clearInterval(id)},5000);
Пауза между первым и вторым работает, а вот со второго на третий не получается. Если вставляю тот же скрипт, то выкидывает сообщение об ошибке.

Помогите, что делать?

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

Регистрация: Apr 2001
Адрес: Berlin
Сообщений: 1,862
Отправить сообщение для derhab с помощью ICQ Отправить сообщение для derhab с помощью Skype™
пишите код не в кадрах клипа, а вне его
что-то типа:
Код AS3:
var delay:Number = 5000;
var id:uint = setInterval(goNext, delay);
 
function goNext():void
{
     if(mc.currentFrame < mc.totalFrames){
         mc.nextFrame();
     }else{
         mc.gotoAndStop(1);
     }
}
__________________
freelance | Раздор

Старый 22.11.2009, 19:27
Choopyster вне форума Посмотреть профиль Отправить личное сообщение для Choopyster Найти все сообщения от Choopyster
  № 3  
Ответить с цитированием
Choopyster

Регистрация: Nov 2009
Сообщений: 3
Цитата:
Сообщение от derhab Посмотреть сообщение
пишите код не в кадрах клипа, а вне его
что-то типа:
Код AS3:
var delay:Number = 5000;
var id:uint = setInterval(goNext, delay);
 
function goNext():void
{
     if(mc.currentFrame < mc.totalFrames){
         mc.nextFrame();
     }else{
         mc.gotoAndStop(1);
     }
}
Если не в кадрах клипа вставлять код, а вдругом месте, то в каком? Что-то не догоню... Код, указанный мной, работает, но вторично в том же мувиклипе не обрабатывается. Может его как-то доработать?!

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

Регистрация: Apr 2001
Адрес: Berlin
Сообщений: 1,862
Отправить сообщение для derhab с помощью ICQ Отправить сообщение для derhab с помощью Skype™
Цитата:
Если не в кадрах клипа вставлять код, а вдругом месте, то в каком?
централизуйте код в root-е
а вообще ваш пример не относится к этому разделу, скорее AS-1
__________________
freelance | Раздор

Старый 22.11.2009, 22:39
Choopyster вне форума Посмотреть профиль Отправить личное сообщение для Choopyster Найти все сообщения от Choopyster
  № 5  
Ответить с цитированием
Choopyster

Регистрация: Nov 2009
Сообщений: 3
Тогда скажие, пожалуйста, как можно перевести из AS2 в AS3 следующий код:
Код:
MovieClip.prototype.ppause = function(seconds) { // в параметере seconds определяется время паузы в секундах
this.stop(); // останавливаем текущий мувиклип
var pause = setInterval(function (mc) {
clearInterval(pause); // после того как время паузы прошло и вызвалась эта функция, удаляем обработчик
mc.play(); // запускаем воспроизведение клипа. Используем объект получаемый через параметр при вызове функции
}, seconds*1000, this);
};
ppause(3);
Просто весь ролик уже написан на AS3. И переход на AS2(1) проблематичен.

Добавлено через 36 минут
Отбой!!! Додумался сам. Спасибо за ответы!!!
В итоге получилось следующее:

Вставляем в первом кадре:
Код:
stop();
var mc=this;
var id=setInterval(function(){mc.play();clearInterval(id)},5000); // где 5000 - время в миллисекундах
stop();
В последующих кадрах, где необходимо сделать паузу вставляем:
Код:
stop();
setInterval(function(){mc.play();clearInterval(id)},5000); // где 5000 - время в миллисекундах


Последний раз редактировалось Choopyster; 22.11.2009 в 23:17.
Старый 21.10.2010, 20:07
selcet вне форума Посмотреть профиль Отправить личное сообщение для selcet Найти все сообщения от selcet
  № 6  
Ответить с цитированием
selcet

Регистрация: Oct 2010
Сообщений: 1
Ребята, извините за дурацкий вопрос, но ...
мне нужна была пауза в середине мувика, перед переходом на следующий кадр. Я использовал скрипт который был описан здесь. Но вот в чем беда, у меня после первого проигрывания фильм начинает ускорять проигрывание.
Не подскажите что может быть?
файл с исходником я прикрепил.
Вложения
Тип файла: rar 570x60.rar (482.0 Кб, 91 просмотров)

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

Теги
пауз , пауза

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

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


 


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


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