Well you have there the code to check one point. Why not check lots of points?
Put a load of small, invisible movie clips with the instance names of point1, point2 etc inside the movie clip you want to check around the edge in places it is likely to hit, then use a for loop to check each of the points inside the movie clip instead of the whole movie clip.
If you understand for loops then the I'm sure you can work out how this code works:
function hits(a:MovieClip, b:MovieClip) {
for (var h = 0; h<=NUMB_MCS; h++) { // change NUMB_MCS to however many smaller mcs inside the big one
if (a["point"+h].hitTest(b)) {
return true;
break;
}
}
}
Then to use the hit test:
if (hits(mc1, mc2)) {
Remember, the more hit tests you do the more likely it is to lag. It's all a balance between accuracy and performance.