Распределять клип по кадрам не модно. Нужно стараться централизовать код. Для твоего случая:

Код:
but._visible = false;//изначально кнопка не видна
_root.onEnterFrame = function (){
//если клип доиграл до конца - он останавливается и появляется кнопка
if (mc._currentframe == mc._totalframes){
mc.stop ():
but._visible = true;
}
}
//при нажатии на кнопку клип начинает играть сначала
but.onRelease = function (){
mc.gotoAndPlay (1);
}