Форум 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)
-   -   Help plz... (http://www.flasher.ru/forum/showthread.php?t=78548)

Mono_l 19.04.2006 14:13

Help plz...
 
Подскажите пожалуйста, как сделать анимированную кнопку (2 или более кадров), анимация на которой активизируется после того как на нее наведешь мышку.

Заранее благодарю.

Reijii 19.04.2006 14:16

лучше делать на кнопку, а movieClip, делаешь в нем анимации сколько тебе нужно.
активировать анимацию по наведению мышки можно по событию

Код:

твойМувик.onRollOver = function()
{
  this.gotoAndPlay(нужный кадр);
}

подробней про события мувика можеш почитать в Help по MovieClip()

Mono_l 19.04.2006 14:56

Сделал все, как ты сказал. Тем не менее он его по кругу крутит и все тут.

Вот как у меня это выглядит:

film.onRollOver = function() {
this.gotoAndPlay(1);
};

Reijii 19.04.2006 15:18

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

Mono_l 19.04.2006 15:23

Я это сделал, но проблема в том, что мувик активируется не при наведении на него, а сразу при запуске.

P.S.

film.onRollOver = function() {
this.gotoAndPlay(1);
};

-Этот скрипт я ведь должен вставить на первый кадр?

Reijii 19.04.2006 15:32

Вложений: 1
на первый кадр чего ?

смотри вложение

Mono_l 19.04.2006 15:36

На первый кадр мувика.

P.S.
Файл sample.fla не открывается. Говорит неизвестный формат фаила.

Reijii 19.04.2006 15:38

Вложений: 1
вот, сохранил для семерки, попробуй еще раз

Mono_l 19.04.2006 15:45

к сожалению тот же эффект.

Хотя странно что не открывается. У меня шестая версия Macromedia Flash MX

__i 19.04.2006 15:59

Вложений: 1
привет от Reijii

Reijii 19.04.2006 16:01

Цитата:

Сообщение от __i
привет от Reijii

__i :)

смотри а то подумают что клон ! :) спасибо что пересохранил в шестерку.

Mono_l 19.04.2006 16:06

) чет прям запара какая. Всеравно крутит его без наведения мышки.

Reijii 19.04.2006 16:53

кхм.. странно.. у меня нету 6, поентому сложно сказать что не так
суть примера такова, в первом кадре находится мувик у которого есть анимация и зовется movik, и в первом кадре, не в первом кадре мувика, там код:
Код:

movik.stop();
movik.onRollOver = function()
{
        this.play();
        this.onEnterFrame = function()
        {
                if (this._currentframe == this._totalframes)
                {
                        this.stop();
                        delete this.onEnterFrame;
                }
        }
}


Mono_l 19.04.2006 17:00

АЛЯ УЛЮ!!! Все получилось!
Спасибо тебе ОГРОМНОЕ за помощь!!

Mono_l 19.04.2006 17:21

И еще маленький вопросик. Как сделать, чтобы когда отводишь мышку, мувик в обраном напрвлении проигрывался. Должен получиться эффект наподоие вот этого : http://www.lladrotalismania.com/eng/index.html (раздел COLLECTION)

xcho_ 19.04.2006 17:38

используй событие onRollOut() ,
а про проигрывание в обратном направлении читай тут

или рисуй руками...))

Reijii 19.04.2006 17:43

новый вопрос в том же посте ? ) читаем правила )

Код:

movik.onRollOut = function()
{
        this.onEnterFrame = function()
        {
                if (this._currentframe == 1)
                {
                        delete this.onEnterFrame;
                }
                else
                {
                        this.prevFrame();
                }
        };
};


Mono_l 19.04.2006 18:27

что-то не то получается. Этот скрипт гоняет его по кругу, а когда нажмешь, то он его прокручивает еще раз вперед, а потом на 1 кадр назад и стопорит...

Reijii 19.04.2006 18:30

у меня все работает :) c учетом что структура таже, как я описывал выше.
Код:

movik.stop();
movik.onRollOver = function()
{
        this.play();
        this.onEnterFrame = function()
        {
                if (this._currentframe == this._totalframes)
                {
                        this.stop();
                        delete this.onEnterFrame;
                }
        };
};
movik.onRollOut = function()
{
        this.onEnterFrame = function()
        {
                if (this._currentframe == 1)
                {
                        delete this.onEnterFrame;
                }
                else
                {
                        this.prevFrame();
                }
        };
};


Mono_l 19.04.2006 18:32

Уууу!! ))
Все работает!
Еще раз ОГРОМНОЕ спасибо!!!:yahoo:

Reijii 19.04.2006 18:33

незачто

KUZEN 19.04.2006 19:15

Цитата:

Сообщение от Mono_l
Подскажите пожалуйста, как сделать анимированную кнопку (2 или более кадров), анимация на которой активизируется после того как на нее наведешь мышку.

Заранее благодарю.

Читаем правила форума http://www.flasher.ru/forum/rules.php , а пока первое предупреждение за название топика

timasik 20.04.2006 14:25

Попробовал как ты предлагаешь... только вот в обратном порядке он fps изменяет :( как это обойти, чтобы и туда и обратно 25 кадров в секунду?

timasik 22.04.2006 16:05

Reijii а вот у меня при использовании данного примера проблема возникла. В слое акшн ваш скрипт (небольшие метаморфозы типа имя клипа поменял на this) а в других слоях четыре кнопки которые при нажатии должны продолжить воспроизведение с (допустим) метки А однако ни одна кнопка не реагирует ни на клик ни на что другое выполняется только ваш скрипт и всё. Пытался создать функцию для нажатия мыши тот же результат вообще кнопок не видит. Что посоветуете?


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

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