![]() |
|
||||||||||
|
|||||
|
Регистрация: Jul 2005
Сообщений: 35
|
День добрый ,Джентельмены.
в виде урока решил написать простенькую программку и весело споткнулся на ней ![]() Сценарий простой: при наведении мышки на объект (шар) он должен постепенно увеличиваться в размерах в зависимости от положения курсора мыши,чем ближе к центру шара,тем размер шара больше, при выходе мыши за пределы границ размер шара восстанавливается. Как правильно написать вышеуказанный сценарий? Мой вариант такой: Создаем клип ball_mc с радиусом 100 Задаем переменные : «точка1» , «точка 2», «коэффициент». Задаем свойства «точек» (надо ли это делать не знаю) Привязываем координаты «точки1» к координатам мыши , а «точку2» к координатам центра шара. Задаем условие : Если координата x «точки1» >= x «точки2»-100 и x «точки1» <= x «точки2»+100 и то же для у, то выполняется выражение : Вычисляется «коэффициэнт» Если х «т1» >= х «т2» -100 и х «т1» <= х «т2» то К = х «т1» -( «хт2»-100) Иначе К = ( х «т2»+100)-х «т1» Далее K=K/100 Далее размеры клипа увеличиваются _scale=100*(1+K) Выражение заканчивается. Таким образом имеем максимальное увеличение шара в 200 процентов Джентельмены, рабочий ли такой сценарий? Какие поправки или изменения нужны? И как все это на язык ActionScript2 перевести? Есстественно у меня ничего не работает ...Второй вариант родился позже...думается надо использовать функцию. написал такой код : function grow ( ) { var xB ;// точка привязанная к центру шара var xM ;// как бы точка привязанная к указателю мыши var k ;// коэффициент,необходимый для вычислений xB = _this._x; xM =_root._xmouse; if (xB >= xM-100 && xB<=xM) { k=xB-(xM-100); k=k/100; ball_mc._scale= 100*(1+k); } } Ball_mc.onRollOver = grow ; Помидорами в начинающих просьба не кидать. |
![]() |
Часовой пояс GMT +4, время: 14:02. |
|
|
« Предыдущая тема | Следующая тема » |
|
|