
Код AS1/AS2:
attachMovie("mc1,"mc1",1)
mc1._x = 100
mc1._y = 100
mc1.flag = true
attachMovie("mc2","mc2",2)
mc2._x = 300
mc2._y = 300
mc2.flag = true
mc1.onRelease = function(){
if(this.flag){this.startDrag();this.flag = false}else{this.stopDrag();this.hit_mc();this.flag = true}
}
MovieClip.prototype.hit_mc = function(){
//измерим расстояние от центра детальки до места соединения
trace(this)
dx = this._x - mc2._x;
dy = this._x - mc2._y;
dist = Math.sqrt(dx*dy+dy*dy);
//проверяем расстояние
//если расстояние меньше 20 пикселей то помещаем его к месту соединения
if(dist < 20) {
this._x = mc2._x;
this._y = mc2._y;
}
}
где mc1 - MovieClip(размещенный в библиотеке) детальки, которую мы будем перемещать
mc2 - MovieClip(размещенный в библиотеке) прибор, к которому надо приделать детальку (mc1)
Делаем функцию hit_mc методом MovieClip - а, для того, что бы без труда можно было передавать все настройки (свойства клипа mc1)детали при коннекте с каким либо устройством.
Или вообще можно просто обычную функцию сделать, аргументом которого будет имя детальки(mc1)
как то вот так