PDA

Просмотр полной версии : Движение объекта при нажатии на кнопку


sanechichek
30.11.2009, 04:22
Тупой вопрос и наверное много раз уже спрашивали, но я не могу найти,а что нахожу не могу понять.
Делаю анимацию что бы при нажатии на кнопку №1, шарик1 начинал котится ударальса об стенку и начинал котитса назад,а при нажатии на кнопку №2, шарик2 делал тоже самое только нужно что бы у него менялась скорость после столкновения. Только это мне нужно полносью решить через ActionScript 3.0(а не просто создать покадровую анимацию).

function Dvigenie1() {
shar1.x = shar1.x+100;
}

knopka1.addEventListener(MouseEvent.CLICK,Dvigenie1);

Что нужно дописать что бы шар двигался так как я описал, а не просто появлялся в указаном месте?

daniral
30.11.2009, 05:03
Ну я думаю поставить таймер.
При нажатии на кнопку запускать таймер и в таймере прибавдять Х.

var timer1:Timer = new Timer(0);
timer1.addEventListener(TimerEvent.TIMER, timerD);

function Dvigenie1()
{
timer1.start();

}

Функция таймера

function timerD(e:TimerEvent):void
{
shar1.x +=10;
}

Для 2-го шара сделать 2-й таймер(timer2)

SamFR
30.11.2009, 12:56
Ну я думаю поставить таймер.

Раз уж анимация, то почему таймер, а не Event.ENTER_FRAME? Я вас не понимаю :)

Jewelz
30.11.2009, 13:01
юзайте Tweener (http://code.google.com/p/tweener/), почитайте документацию (http://hosted.zeh.com.br/tweener/docs/en-us/) - там найдете все, что вам требуется

sanechichek
30.11.2009, 17:10
Я так и не понял как работать с Tweener

Добавлено через 24 минуты
С таймером то все понятно, только не понятно как прекратить выполнение, а вот Event.ENTER_FRAME не понимаю. ПОМОГИТЕ пожалуйста разобратся.

Jewelz
30.11.2009, 17:44
Я так и не понял как работать с Tweener

knopka1.addEventListener(MouseEvent.CLICK, onClick);

private function onClick(e:MouseEvent):void
{
Tweener.addTween(shar1, {x:shar1.x + 100, time:1, transition:"linear", onUpdate:updateFunc, onComplete:completeFunc});
}

// shar1 - что двигаем
// x (можно и другие свойства - см доки) - что меняем
// time - за какое время произойдет анимация
// transition - переход(вариации в доках)
// updateFunc - функция, вызываемая каждый раз, когда параметр поменяет значение
// completeFunc - функция, вызываемая в конце анимации

не забудьте скачать класс Tweener и сделать import его

sanechichek
30.11.2009, 19:02
скачал Tweener.as вставил у папку fl/transitions.
в коде прописываю import fl.transitions.Tweener;
говорит что файл Tweener не найден(((