Making hangman game - few problems

at the moment these are the things i’m having trouble with:

[LIST]
[]Making it so that if the letter you just entered is already in “usedletters” then it wont go ahead with the sendletter function
[
]A lives system, so if your guess is wrong then you lose a life
[*]When a invalid character is put in, the text box clears (at the moment it recognises that its invalid it just doesn’t clear it
[/LIST]

I’m still beginner to as3 and would appreciate any help :smiley: thanks
here’s my code


package {
    import flash.display.MovieClip;
    import flash.text.*;
    import flash.display.SimpleButton;
    import flash.display.Stage;
    import flash.events.MouseEvent;
    import flash.events.KeyboardEvent;
    import flash.events.TextEvent;
    import flash.ui.Keyboard;
    public class Main extends MovieClip {

        //VARIABLES GO HERE
        private var answerword:String="cat";
        private var answer:Array=new Array("c","a","t");
        private var hiddenword:Array=new Array();
        private var currentguess:String="";
        private var usedletters:Array = new Array();
        private var lives:int=5;
        private var nothingfound:Boolean=false;
        private var answerlength:int=answer.length;
        private var myguess:TextField=new TextField  ;
        private var fontformat:TextFormat=new TextFormat  ;
        private var underlined:TextField=new TextField  ;

        //MAIN SETUP FUNCTION
        public function setup() {
            trace(answerlength);
            while (answerlength>0) {
                hiddenword.push("_");
                answerlength-=1;
            }

            //CREATE TEXTFIELD FOR INPUT
            fontformat.size=16;
            fontformat.font="Verdana";

            myguess.type=TextFieldType.INPUT;
            myguess.defaultTextFormat=fontformat;
            myguess.border=true;
            myguess.text="";
            myguess.height=fontformat.size+5;
            myguess.multiline=false;
            myguess.wordWrap=true;
            myguess.maxChars=1;
            myguess.x=stage.stageWidth/2-myguess.width/2;
            myguess.y=stage.stageHeight/2-myguess.height/2;
            addChild(myguess);

            //INITAL UNDERLINED
            underlined.defaultTextFormat=fontformat;
            underlined.border=false;
            underlined.selectable=false;
            underlined.text=hiddenword;
            addChild(underlined);

            //LISTENERS
        }
        public function listeners():void {
            myguess.addEventListener(KeyboardEvent.KEY_DOWN,sendletter);
        }

        //SUBMIT WHAT IS INSIDE MYGUESS
        public function sendletter(event:KeyboardEvent):void {
            if (event.keyCode==Keyboard.ENTER) {
                currentguess=myguess.text;
                if ((usedletters.indexOf(currentguess)!=-1) && (usedletters[-1] != currentguess)) {
                    usedletters.push(currentguess);
                    trace("added");
                } else {
                    trace((currentguess) + " already exists");
                }
                //for each letter in answer, replace with correct guess, else wrong
                for (var i:Number=0; i<=answer.length; i++) {
                    if (currentguess==answer*) {
                        hiddenword*=answer*;
                        underlined.text=hiddenword;
                        break;
                    } else {

                    }

                }
                //invalid character filter not working yet
            } else if ((event.keyCode<65||event.keyCode>90) && (event.keyCode != Keyboard.BACKSPACE)) {
                trace("invalid");
                //this below code doesnt make the field go blank
                myguess.text="";
            }

            myguess.text="";

        }


        //MAIN!
        public function Main() {
            setup();
            listeners();
        }
    }
}