Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Как изменить скорость показа кадров?
Flash Zone Forum > Macromedia Flash > Начинающим
Makc_
Надо что бы при нажатии на одну кнопку клип проигрывался быстрее, а на другую - медленее. И что бы можно было много раз нижимать на ту или другую кнопку и анимаця становилась всё быстрее и быстрее или медленее и медленее в зависимости на какую кнопку нажимать.
MustLive
Цитата
Как изменить скорость показа кадров?

Makc_

Чтобы изменить fps флеш-ролика начиная с AS3 можно использовать свойство stage.frameRate:
Код
stage.frameRate=20;

Данная возможность имеется только в Flash 9 (CS3) и выше. В предыдущих версиях флеша, не поддерживающих AS3, программно изменить скорость проигрывания нельзя. В них лишь можно измененить fps через параметр Frame Rate в свойствах флеш-ролика.

Цитата
Надо что бы при нажатии на одну кнопку клип проигрывался быстрее, а на другую - медленее.

Сделай две кнопки. В одной задай уменьшение fps, а во второй увеличение fps.

Вот пример кода для двух кнопок (с именами speedup и speeddown):
Код
_root.speedup.onRelease = function() {
    stage.frameRate += 1;
}
_root.speeddown.onRelease = function() {
    stage.frameRate -= 1;
}
Makc_
Пасиб, осталось только скачать flash 9 biggrin.gifD Ну это не проблема, на локалке где-то видел... А как кнопке дать имя? Я флеш вообще почти не знаю, только форму умею делать и движение. Кнопки мне друг подсказал как сделать, там какая-то синяя область такая, в которой я и писал скриптик, мол по нажатию перейти по url и т.д. Можно сделать это и на кнопки и всё будит работать, но как сделать это через рут?

Adobe Creative Suite 3 Master Collection 3,3 Gb это то?
Makc_
ем... у меня что-то не получается =( Посмотрите как-то на досуге в чём там дело
ftp://makc.myftp.org/flashzone.rar
Makc_
есть кто живой на этом форуме?
Makc_
Сделал всё так как ты писал. У меня на первом кадре клип не движится, а по нажатию на кнопку начинается анимация с изменением скорости. Вот скриптик

первый кадр

CODE
stop();
_root.speeddown.onRelease = function() {
gotoAndPlay (2);
}
_root.speedup.onRelease = function() {
gotoAndPlay (2);
}



второй кадр

CODE
_root.speedup.onRelease = function() {
stage.frameRate += 1;
}
_root.speeddown.onRelease = function() {
stage.frameRate -= 1;
}


из библиотеки взял две кнопки и мереиминовал их в speedup и speeddown, но программа при Ctrl+Enter выдаёт ошибку и не выполняет скрипт

1120: Access of undefined property _root. _root.speeddown.onRelease = function() {
1120: Access of undefined property _root. _root.speedup.onRelease = function() {
1120: Access of undefined property _root. _root.speedup.onRelease = function() {
1120: Access of undefined property _root. _root.speeddown.onRelease = function() {

бред какой-то...
исходник в архиве который указал выше
MustLive
Цитата
есть кто живой на этом форуме?

Makc_

Как будет у людей время, тебе обязательно ответят. Нужно лишь дождаться ответа, и при этом не лениться самому решить свою проблему.

На форум людей ежедневно заходит много, но в основном или почитать или задать свои вопросы. Отвечающих же на вопросы участников форума на порядок меньше. Поэтому ищи ответы на свои вопросы на форуме и самостоятельно разбирайся с проблемами. А чтение хелпа к флешу, нашего форума и нашей рассылки в этом тебе помогут.

Цитата
Adobe Creative Suite 3 Master Collection 3,3 Gb это то

Да это то, что тебе нужно. И даже больше smile.gif, т.к. это полный набор CS, а тебе в данном случае нужен Flash CS3. Но и другие программы от Адоба тебе также пригодятся.

Цитата
ем... у меня что-то не получается =( Посмотрите как-то на досуге в чём там дело

Со своими проблемами не стесьняйся самостоятельно разбираться (не нужно по каждой мелочи писать на форуме, тебе быстрее будет самому разобраться).

Я же твой архив открыть не имею возможности. Так как у тебя исходник в формате Flash 9, а я не использую данный редактор (пользуюсь Флеш 8), т.к. нет в нём потребности (поэтому до сих пор и не выкачал себе CS3). Так что два твоих исходника я не посмотрю. В любом случае я тебе объяснил, что нужно использовать stage.frameRate, и тебе нужно лишь корректно написать AS-код и всё у тебя заработает.
Makc_
я сам пытаюсь решить проблему, но некто из знакомых не знает flash, темболее кто в девятом классе его будет знать... в гугле искал что-то похожее но не нашел, видимо у меня такая нелепая ошибка, что о ней ещё некто даже и не догадался спросить ^^ вот я тоже пользовался flash 8, пока не наткнулся на stage.frameRate ...
/2D/
2Makc_
http://flasher.ru/forum/showthread.php?t=83431 - тут есть неплохое описание AS3, а вообще он довольно сильно отличается от AS1/2, и поэтому рекомендую почитать что там пишут, кстате если тебе нужно сделать именно ту "крутяшку" smile.gif, что лежит в твоих примерах, то воспользуйся лучше знакомым тебе AS2 и св-вом _rotation таким образом:
Код
stop()
this.onEnterFrame=function(){
krutyashka._rotation+= povorot
}
speedup.onRelease = function() {
povorot+=1;
}
speeddown.onRelease = function() {
povorot-=1;
}

не забудь назвать кнопки:speedup,speeddown, а из "крутяшки" сделай мувиклип и назови krutyashka laugh.gif
Makc_
тогда прийдётся нажимать на кнопку, что бы колесо двигалось, а мне надо, что бы оно сапо двигаголось и могло как ускоряться так и замедляться... почему у меня вылазят вышеперечисленные ошибки ?
Makc_
flash или не понимает что такое speedupи speeddown или не понимает что такое _root, хотя рут синим загорается. Надо ли где ещё прописывать speedup и speeddown кроме как в библиотеке нудным кнопкам такие названия дать?
/2D/
первое правило AS3 - забыть что такое писать код на кадрах smile.gif , потому что он его может неправильно воспринимать, что у тебя и случалось
Цитата
тогда прийдётся нажимать на кнопку, что бы колесо двигалось, а мне надо, что бы оно сапо двигаголось и могло как ускоряться так и замедляться...

ничего подобного, поворот я поставил на EnterFrame, т.е он осуществляется каждый FPS, и код что я написал ниже должен работать
Makc_
у меня почему-то не работает... можешь объяснить не знающему человеку ? ftp://makc.myftp.org/flashzone2.rar
Makc_
а как удалить пост на этом форуме? два случайно двпа раза одно и тоже отправил)) щас вместо того текста эт онаписал
/2D/
так) во первых для моего скрипа достаточно 1-ого кадра, и использовать моушен не надо, во-вторых когда я тебе сказал засунуть крутяшку в символ её надо было вытащить на сцену, в третьих - это название символов (мувиклипов), имя символам дается не как название в библиотеке, оно вписывается в поле <Instance Name> это поле заметишь на панели Properties, когда выделишь символ(на сцене) курсором, а вот готовый вариант флэшки:
флэшка
Makc_
хм... понятно =) значит этот скрипт сам делает как бы бесконечное движение из начального кадра, инстанцию надо было указать и прописать povorot=0 =) учту в будущем, спасибо ^^
/2D/
на здоровье smile.gif
Русская версия IP.Board © 2001-2008 IPS, Inc.