![]() |
|
||||||||||
|
|||||
|
Регистрация: Jun 2004
Адрес: Москва
Сообщений: 475
|
Как можно сделать как бы прилипание края одного мувика к краю другого, т.е. если один тащим к другому и растояние меньше чем n, то прилипаем?
|
|
|||||
|
n = 15;
dis_x = mc1._x+mc1._width-mc2._x; dis_y = mc1._y+mc1._height-mc2._y; //(если начало координат - левый верхний угол) if (n<=abs(dis_x && mc1.drag)) {mc1._x = mc2._x+mc2._width;} if (n<=abs(dis_x && mc2.drag)) {mc2._x = mc1._x+mc1._width;} if (n<=abs(dis_y && mc1.drag)) {mc1._x = mc2._y+mc2._height;} if (n<=abs(dis_y && mc2.drag)) {mc2._x = mc1._y+mc1._height;} |
|
|||||
|
Регистрация: Jun 2004
Адрес: Москва
Сообщений: 475
|
какой-то очень странный код, или это шифр?
|
|
|||||
|
Это старинное шаманское заклинание. Читать при луне в пятницу.
вместо if (n<=abs(dis_x && mc1.drag)) {mc1._x = mc2._x+mc2._width;} я бы написал: if (n<=abs(dis_x && mc1.drag)) mc1._x = mc2._x+mc2._width |
|
|||||
|
Ветеран форума
|
зато места мало занимает ... оптимизация кода так сказать ...
__________________
BestMasterиZация |
|
|||||
|
Регистрация: Jun 2004
Адрес: Москва
Сообщений: 475
|
смешно, я говорю, о работе данного скрипта
|
|
|||||
|
Ветеран форума
|
здарова серёга ...
работу не проверял поэтому и смешно ... :-)))
__________________
BestMasterиZация |
|
|||||
|
Регистрация: Jun 2004
Адрес: Москва
Сообщений: 475
|
а я проверял, где прилипание не пойму
|
|
|||||
|
Вот правильный вариант, протестил:
onClipEvent (load) { var X,Y,D,minD } onClipEvent (enterFrame) { _x=_root._xmouse _y=_root._ymouse minD=30//расстояние до залипания X=_root.mc1._x Y=_root.mc1._y D=Math.sqrt(Math.pow(X-_x,2)+Math.pow(Y-_y,2)) if(D<minD)_x=X,_y=Y } |
|
|||||
|
Регистрация: Jun 2004
Адрес: Москва
Сообщений: 475
|
спасибо, а как сделать прилипание к краю, к тому же объект неровный.
у гурского есть примерчик, но там реализовано на движении, а для моей ситуации пока не выходит, буду разбираться |
![]() |
![]() |
Часовой пояс GMT +4, время: 05:40. |
|
|
« Предыдущая тема | Следующая тема » |
|
|