![]() |
Воздушный шарик средствами AS
Здраствуйте. Столкнулся с проблемой, возможно обсуждавшейся на форуме, но к сожалению не смог найти что-то конкретное.
Задача создать воздушный шарик, который будет себе свободно летать в указаной зоне, и при касании его мышкой он должен как бы отскакивать от курсора (эффект как будто его подбивают рукой). Само програмирование мне чуток сложно для понимания, но кое-как написал строчки для рандомного движения шарика, а вот чтобы он отбивался от курсора, попытки закончились неудачей. Вот код (mc - тот самый шарик): Код:
function randRange(min:Number, max:Number):Number { |
Кода нет, есть совет:
Код:
ball.onRollOver = function ():Void{onRollOver - этот метод срабатывает, когда наводишь мышью на клип. |
Спасибо за столь быстрый ответ.
Функция onRollOver само собой, но в даном случае шарик прыгнет по _у в верх. Но нужен учет положения курсора по _х. Если он слева от шарика, значит при наведении должен уходить в право, если курсор справа, тогда влево. Вот моя очередная попытка, но в даном случае отслеживается положение курсора относительно самого клипа, но никак не при наведении. Код:
function randRange(min:Number, max:Number):Number { |
Код:
ball.onRollOver = function ():Void{ |
Я бы считал и сохранял где-то вектор перемещения курсора, т.е. направление и скорость. Ну и в зависимости от длины и направления этого вектора пинал шарик.
|
Хм, знать бы как это реализовать. Я думал о варианте проще, - что при самом наведении курсора, клип отскакивал в противоположную сторону от курсора, значит отсчитывать позицию курсора непосредственно при наведении. Но и тут силенок не хватило.
|
попробуй вычеслить угол, когда курсор оказывается внутри шарика хотя бы hitTest-ом.
|
почитай hitTest, там есть пересечение объекта с курсором.
а скорость легко вычисляется путем сохранения предыдущих координат мыши и сравнением их с текущими. |
Спасибо. Буду пробовать.
|
| Часовой пояс GMT +4, время: 03:06. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.