I found your problem. First you need to make the movieclip stop where it is (assuming this code is on your leek movieclip):
onClipEvent(load) {
this.gotoAndStop(1);
var isPlaying:Boolean = false;
}
Then, directly after that line:
onClipEvent(enterFrame) {
if(Key.isDown(Key.UP)) {
if(!isPlaying) {
this.gotoAndPlay(2);
isPlaying = true;
}
} else {
isPlaying = false;
this.gotoAndStop(1);
}
}
The problem was, since the enterFrame event continuously loops, it was continuously playing from frame 1, which gave the impression that it was stopping. So I've just make a variable that is it is false, and you press the up button, it tells the clip to play, then straight after changes it to true so that it won't tell it to play again.