![]() |
|
||||||||||
|
|||||
|
Проблема заключается в следующем: есть какой-то обьект с _х координатой. При нажатии на кнопке значение _х должно плюсоваться или минусоваться, в зависимости от выбранного направления (<< >>). Движение должно быть плавным, т.е. постепенный разгон с места и так же торможение.
Как я себе представлял решение этой задачи: есть какая-то переменная, пусть будет "а". При нажатии на кнопке значение этой переменной плюсуется (допустим становиться равным 100). Запускается цикл в виде: В итоге по этому циклу обьект пройдет без ускорения 100 пикселей, потом остановиться (впринципе я полагал, что ускорение можно будет прописать ифами в теле цикла, которые будут зависить от процента оставшегося значения "а"). Но в результате незнания я предположил, что частота прохождения цикла будет равна честоте кадров клипа, которые прописываются в параметрах заранее. Оказалось, что цикл проходится практически мгновенно и никакой анимации не видно. Вобщем я надеюсь вы поняли мою проблему, поэтому если кто-то сталкивался с этим, то помогите мне пожалуйста! Или скажите где можно найти ответ на вопрос, я, честно говоря, уже замучился искать. Спасибо за то, что прочитали пост! Последний раз редактировалось peresmeshnik; 07.06.2007 в 14:11. |
|
|||||
|
ветеран форума
|
следует понять логику флеша: сначала выполняется весь код на кадре, затем кадр отображается. Чтобы делать изменение координаты можно либо использовать обработчик onEnterFrame - вызов с частотой смены кадров, либо setInterval + updateAfterEvent - если не хочется зависеть от частоты кадров флешки.
Пример кода: +Используйте Поиск, самые разные аспекты этого вопроса уже обсуждались
__________________
4am is time to rock Последний раз редактировалось DarkLight; 07.06.2007 в 04:04. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
peresmeshnik, отредактируйте свой пост и оформите код тегами [code][/code].
|
|
|||||
|
Спасибо, попробую сделать так. Только не понимаю, что означает вот эта часть:
|
|
|||||
|
Регистрация: Mar 2003
Адрес: Россия, Санкт-Петербург
Сообщений: 565
|
удаляет обработчик onEnterFrame созданный ранее
|
|
|||||
|
Тогда получается, что если не удалять обработчик onEnterFrame и временная шкала будет на фрейме, в котором написан этот скрипт - то он будет постоянно выполняться?
|
|
|||||
|
Регистрация: Mar 2003
Адрес: Россия, Санкт-Петербург
Сообщений: 565
|
он будет выполнятся то того пока ты его не удалишь, а где в это время шакала будет никого неволнует
|
|
|||||
|
[+1 22.07.07]
|
для ускорения пробуй добавлять не "1", а какую-нить переменную inc в зависимости от положения мувика, напр:
inc = this._x - 250; чем дальше будет уезжать мувик, тем больше будет inc.... можно еще сделать его в квадрате... PS: можно this._x - 250 еще не на что-нить поделить, чтобы inc изменялся (например) от 0 до 3.... тогда используя его в квадрате получаем диапазон от 0 до 6 (причем парабола) Последний раз редактировалось Ведьмак; 07.06.2007 в 16:48. |
|
|||||
|
Регистрация: Aug 2005
Сообщений: 785
|
ну или можно при ускарении назначать начальную скорость
а потом просто её умножать на 1,1 ) при торможении на 0,9тоесть так так будет плавное ускарение
__________________
Нано-флешер (в отставке) |
|
|||||
|
Регистрация: Feb 2007
Сообщений: 264
|
Цитата:
|
![]() |
![]() |
Часовой пояс GMT +4, время: 22:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|