// get proximity //
// Point1 is current layer, point2 is control layer
point1=this_layer.position;
point2=this_comp.layer("drag me").position;
// Find the vector between the 2 points
delta=sub(point1, point2);
// Now find the length
distance=length(delta);
//Use linear() to remap distance to range of 40 to 0
n = linear(distance, 0, 40,20, 0);
// parenting //
myParent = thisComp.layer("drag me");
myProp = myParent.transform.position;
// combine proximity and parenting //
x = transform.position[0] + (myProp[0].value - myProp[0].valueAtTime(0) * n);
y = transform.position[1] + (myProp[1].value - myProp[1].valueAtTime(0) * n);
[x,y]