1) Начинаете перетаскивать какой нибудь шар.
2) Во время перетаскивания (MouseEvent.MOUSE_MOVE) проверяете смещение перетаскиваемого шара от его начальных координат.
3) Если оно положительно, двигаете правый, относительно перетаскиваемого, шар на дельту, вычисленную в пункте 2, в противоположную сторону.
4) Если смещение (из пункта 2) отрицательно, делаете описанное в пункте 3 с левым шаром.
5) При превышении смещением расстояния между шарами, останавливаете перетаскивание.
6) Выравниваете шары при необходимости.
7) При использовании массива меняете переместившимся шарам индексы.
Добавлено через 2 минуты
Цитата:
|
ограничить движения двигаемого шарика некой областью
|
Как один из вариантов:
startDrag(lockCenter:Boolean = false,
bounds:Rectangle = null):void