Форум 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)
-   -   Анимированная кнопка! (http://www.flasher.ru/forum/showthread.php?t=106063)

св.demien 01.01.2008 14:51

Анимированная кнопка!
 
Как известно в кнопке есть 4 кадра-UP,OVER,DOWN,HIT...я сделал новогоднюю открытку, и хочу чтоб она была немного игровой, в открытке есть мешок под елкой, мешок я сконвертил в кнопку-первый кадр и второй-мешок стоит, в третий-DOWN(то есть при нажатии) я вставил мувик где мешок открывается, в самом мувике в последнем кадре остановил анимацию методом gotoAndStop...После публикации при нажатии на мешок-он открывается, после отпускания, он возвращается в исходную. Я хочу чтобы он закрывался не возвратом в первый кадр, а в анимации(как открылся так и закрылся) я попробовал в HIT-последний кадр кнопки вставить мувик в котором обратная анимация мувика из кадра DOWN, но ниче не получается, вобще читал где то что этот HIT ниче не даёт...И как сделать теперь плавную анимацию закрытия мешка после отпускания мышки не знаю. Подскажите как...

Ostgur 01.01.2008 15:11

ничего непонятно, учитесь писать в 2-х словах и по делу.
всё что вы хотите сделать, можно сделать мувиклипом, смотрите в хелпе(F1 - нажать и вбить в поиск MovieClip). Вам пригодится:
Код:

a = 0;// это проверяльщик-переменная, если 0, значит ещё не нажали на мувиклип
//обработчик на навод мышки на мувилкип
mc.onMouseOver = function(){
mc.gotoAndPlay();
}

//обработчик на отвод мышки с мувилкипа
mc.onMouseOut = function(){
mc.gotoAndStop();
}

//обработчик на нажатие
mc.onPress = function(){
if(a == 0){ //если a равно 0, то делаем следущее
mc.gotoAndPlay();
a == 1;
} else{ //если a не равно 0, то делаем следущее
mc.gotoAndPlay();
}
}


MrPoma 01.01.2008 16:52

или можно сделать несколько анимированых мувиков для каждого состояния кнопки и вставить их в кадры кнопки..
но я бы выбрал вариант с кодом...

iNils 01.01.2008 16:55

Цитата:

Сообщение от MrPoma
или можно сделать несколько анимированых мувиков для каждого состояния кнопки и вставить их в кадры кнопки..

Этот вариант "дырявый", он правильно работает, только если дождаться окончания анимации каждого фрагмента.

MrPoma 01.01.2008 20:14

т.е будут происходить 'сбрасывания' анимации? ..ну а как иначе, чтобы анимация просто останавливалась?

Ostgur 01.01.2008 20:17

MrPoma, использовать MovieClip вместо Button!

MrPoma 01.01.2008 20:36

Цитата:

Сообщение от Ostgur
использовать MovieClip вместо Button!

это-то понятно.. в чем дырявость не могу понять..

iNils 01.01.2008 21:09

Цитата:

Сообщение от MrPoma
это-то понятно.. в чем дырявость не могу понять..

Анимация скачет.

MrPoma 01.01.2008 21:25

а если использовать вариант с кодом то чего с ней будет? остановится чтоли?

valyard.com 01.01.2008 21:33

вариантов куча
1. делаем мувиклип с анимацией в одну сторону как кнопка зажигается, делаем прозрачную кнопку и на ней onRollOver = запустить мувик «вперед», onRollOut = onReleaseOutside = запустить мувик «назад». как проигрывать назад не писал только ленивый.
2. мувиклип с анимацией вперед и сразу назад, прозрачную кнопк, onRollOver = начинаем играть с начала, если _особаяпеременная_ не установлена, то стоп где кончается анимация вперед, если установлена, то продолжаем до конца (то есть мышь уже ушла), onROllOut = onReleaseOutside = устанавливаем _особаяпеременная_, если уже закончилась анимация вперед, play() анимацию дальше, которая уже назад. получается, что если навести и убрать сразу, то проиграется вперед и назад, а не скачком.
примерно так.


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

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