|
|
|||||
Регистрация: Mar 2011
Адрес: Ibiza
Сообщений: 13
|
перевод AS2 в AS3
нужно сделать прыгающий мячик, как в реальности который прыгает и постепенно останавливается.. нашел в инете то, что нужно, но исходник на as2, а нужен в as3
решил попробовать переделать под as3, переделал, код совсем простой, но есть одна ошибка, дело в том что в as2 все это дело происходит через таймер, но с таймером пока не приходилось сталкиваться и про него совсем ничего не знаю, поэтому из as3 выкинул его совсем.. загвоздка в том, что в as2 когда мячик перестает прыгать он останавливается и стоит на месте, а в as3 он останавливается и начинает смещаться в противоположную сторону.. помогите разобраться, что нужно еще дописать чтобы в as3 было как и в as2? исходник as2: function ANIM() { Vy = Vy + 0.1; ball._y = ball._y + Vy; Vx = Vx - 0.01; ball._x = ball._x + Vx; if (ball._y > 225) { Vy = Vy * -0.85; Vx = Vx * 0.99; if (Vx < 0) { clearInterval(timer); } } updateAfterEvent(); } ball._x = 50; ball._y = 170; var Vy = 0; var Vx = 3; timer = setInterval(ANIM, 1); ball.x = 50; ball.y = 170; var Vy = 0; var Vx = 3; stage.addEventListener(Event.ENTER_FRAME, moveball); function moveball(e:Event):void { Vy = Vy + 0.1; ball.y = ball.y + Vy; Vx = Vx - 0.01; ball.x = ball.x + Vx; if (ball.y > 225) { Vy = Vy * -0.85; Vx = Vx * 0.99; if (Vx < 0) { Vx *= 0; } } } |
|
|||||
Он продолжает ползти влево и вниз, потому что первые четыре строчки функции moveball принуждают его к этому. Можно вместо строчки
отписаться от прослушки ENTER_FRAME: |
|
|||||
Регистрация: Mar 2011
Адрес: Ibiza
Сообщений: 13
|
спасибо за помощь))
|
Часовой пояс GMT +4, время: 21:22. |
|
« Предыдущая тема | Следующая тема » |
|
|