Форум 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=65862)

Shivan 21.06.2005 17:14

помогите с навигацией разобраться
 
Помогите с навигацией разобраться:
Значит так. У мене сайт рисуется. там есть прикол есть анимация, завязанная на кнопку. Мне нуна:
чтобы княпнуть на одну кнопу, анимация сработала, нажал на другую, анимация пошла обратно(вернулась в начальное положение так же как и вперед ехала), а потом сработала следующая анимация из первоначального состояния. Описание:
- княп на кнопке 1-> шарик покатился справа на лево
- княп на кнопке 2-> шарик покатился слева на право(в исходное положение) и потом покатился вниз
княп на кнопке 3-> шарик покатился вверх, а потом влево

т.е. Все анимашки должны происходить через точку старта.Но без кнопки "назад". Я понимаю, что все через ЭкшенСкрипты делается, только как?
На деюсь понятно объяснил
Я чайник поэтому объясняйте поподробней или вышлите исходник подобной хрени:)
Заранее благодарю. :confused:
e-mail: malack@narod.ru

silin 21.06.2005 20:17

Вложений: 1
объяснять долго, проще показать

Shivan 22.06.2005 16:53

Спасибо Брат!!!!Тока, это, можешь прокоментировать что там где происходит:
var b=this.ball;
var del=20;//время в кадрах -это ясно
var dist=120;//расстояние -это ясно
b.y=b._y,b.x=b._x;//исходное положение -это ясно
u.onRelease=d.onRelease=l.onRelease=r.onRelease=function(){
var n=this._name;
var s=n=='l'||n=='r'?'_x':'_y';
var d=n=='d'|| n=='r'? dist:-dist;
if(b._x!=b.x) var t=new mx.transitions.Tween(b, "_x", mx.transitions.easing.Bounce.easeOut, b._x,b.x, del);
if(b._y!=b.y) var t=new mx.transitions.Tween(b, "_y", mx.transitions.easing.Bounce.easeOut, b._y,b.y, del);
if(!t) var t=new mx.transitions.Tween(b, "_y", null, b.y,b.y, 1);
t.onMotionFinished = function() {new mx.transitions.Tween(b, s, mx.transitions.easing.Bounce.easeOut, b[s],b[s]+d,del); }
}
c.onRelease=function(){
if(b._x!=b.x) new mx.transitions.Tween(b, "_x", mx.transitions.easing.Bounce.easeOut, b._x,b.x, del);
if(b._y!=b.y) new mx.transitions.Tween(b, "_y", mx.transitions.easing.Bounce.easeOut, b._y,b.y, del);
}

silin 22.06.2005 18:54

u.onRelease=d.onRelease=l.onRelease=r.onRelease=function(){
var n=this._name;//смотрим на какую кнопку нажали
var s=n=='l'||n=='r'?'_x':'_y';//для влево и вправо менять будем _х, для вверх/вниз - _y
var d=n=='d'|| n=='r'? dist:-dist;// для вниз и вправо будем прибавлять, для вверх и влево - вычитать
//mx.transitions.Tween класс для прграммного перемещения, почитать можно здесь
if(b._x!=b.x) var t=new mx.transitions.Tween(b, "_x", mx.transitions.easing.Bounce.easeOut, b._x,b.x, del);//если _x или _y шарика не равны исходным отправляем в начальную точку
if(b._y!=b.y) var t=new mx.transitions.Tween(b, "_y", mx.transitions.easing.Bounce.easeOut, b._y,b.y, del);
if(!t) var t=new mx.transitions.Tween(b, "_y", null, b.y,b.y, 1);//если шар на месте(t не определена), то организуем 'пустышку'
//по завершении маневра организум твин в нужную точку
t.onMotionFinished = function() {new mx.transitions.Tween(b, s, mx.transitions.easing.Bounce.easeOut, b[s],b[s]+d,del); }
}

Shivan 01.07.2005 19:19

сенкаю вери матч!

Shivan 07.07.2005 14:40

блин! что-то я это... мне теперь нуно, чтобы объекты двигались по кривой тректории(туды и назад, как описано сверху)

silin 07.07.2005 20:33

ну и в чем дело ?
посмотри у Дембицкого Path, у Потапенко Conveyor: все уже сделано..
не хочешь программно, можно на линейке наплодить нужных анимаций и по тому же алгоритму(что в моем примере) отправлять мувик куда нада, за счет gotoAndStop, NextFrame, PrevFrame..

Штрек 09.07.2005 01:47

сил, тебе пора уроки писать..... ;)

silin 09.07.2005 22:45

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

Штрек 09.07.2005 22:51

не останавливайся........
скоро открою флэш-клуб -
будешь почётным председателем... ;)


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

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