ЗАЦИКЛИВАЕМ ДВИЖЕНИЕ

 

Предыдущий пример можно реализовать в удобоваримом виде используя отскок от границ мувиклипа. Но не всегда такой выход является лучшим. Часто используется зацикливание движения и на примере мы посмотрим как это выглядит. Добавим к использованному в предыдущем примере скрипту следующий (то что нужно добавить выделено синим цветом, удалять ничего не нужно):

 

onClipEvent (load) { // при загрузке

// задаем пределы, при выходе за которые мы должны переместить мувик:

l = - 10;// левый

r = 560; // правый

t = - 10; // верхний

b = 410; // нижний

}

onClipEvent (enterFrame) {

if (drag) {

sx = _x-x; sy = _y-y; x = _x; y = _y;

} else {

_x += sx *= .99; _y += sy *= .99;

if (_x < l) { // если вышли за левый край

_x+= 550; // перемещаем на правый край

} else if (_x > r) { // иначе, если вышли за правый край

_x -= 550; // перемещаем на левый край

}

if (_y < t) {// если вышли за верхний край

_y+= 400; // перемещаем на нижний край

} else if (_y > b) { // иначе, если вышли за нижний край

_y -= 400; // перемещаем на верхний край

}

}

}

Этот прием практически не нуждается в дополнительных комментариях, но лучше его смотреть не в тестовом о кне, а открыв swf. Следует учесть, что данный пример рассчитан на мувик 550х400 и радиус шарика 10 пикселов. Эти два показателя влияют на рассчет пределов и величину смещения в случае выхода за указанные пределы.

 

Hosted by uCoz