Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   есть функция nextFrame prevFrame (http://www.flasher.ru/forum/showthread.php?t=173841)

Bankomat 12.01.2012 16:43

есть функция nextFrame prevFrame
 
как я понимаю nextFrame и prevFrame перелистывают кадр вперед и назад и останавливаются на кадре

есть такой вот таймлайн
[IMG]http://s017.***********/i436/1201/45/692fb74373c9.jpg[/IMG]

в 1,15,30,45 кадрах стоит Stop
есть 2 кнопки
Код AS1/AS2:

//кнопка которая должна проигрывать ролик до следующего стоп(все верно проигрывает и останавливает)
on(release) {
        nextFrame();
        play();
}

Код AS1/AS2:

//кнопка которая должна проигрывать ролик до предыдущего стоп
on(release) {
        prevFrame();
        //а вот тут то и загвоздка
}

по на нажатию кнопки, ролик прыгает на один кадр назад и останавливается, есть ли что то подобное Play, только в обратную сторону?) хочется что бы кнопка прокручивала анимацию назад до предыдущего Stop

lexa2000lexa 12.01.2012 17:11

Вложений: 1
посмотри ввот этот примерчик может он вам подойдет

Bankomat 12.01.2012 18:01

да он описывает именно то что нужно
все в вашем примере так же как у меня за одним только но
у вас во всех стоп
Код AS1/AS2:

stop()
delete onEnterFrame

и в кнопке которая листая назад стоит
Код AS1/AS2:

but_prev.onPress = prev;
function prev(){
        onEnterFrame = function() {
                prevFrame();
        }
}
delete onEnterFrame
stop()

объясните логику, я что то не пойму
удаляем функцию которая листает на кадр назад с остановкой, и почему то кадры едут назад до след стоп
я так понимаю удаляем мы для того что бы стоп не перескакивало....

парадокс для меня не ясный..

lexa2000lexa 12.01.2012 18:35

onEnterFrame это не функция перехода на предыдуший кадр а обработчик события, вызывается с частотой, равной fps вашего ролика, а если его не удалять действительно он перескачет кадры в котором стаят стопы.

DominikLq 13.01.2012 03:24

Сделай так.
Создай переменную napravlenie, которая будет хранить направление движения ролика.
Код AS1/AS2:

onClipEvent(load){
napravlenie = 0;
}
 
onClipEvent(enterframe){
if (napravlenie == 0){
muvik.stop
}
if (napravlenie == 1){
muvik.nextFrame
}
if (napravlenie == 2){
muvik.prevFrame
}
}

Потом создай кнопочки, которые будут переключать режим направления: 0, 1 или 2.


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

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