tengo este codigo:
Código :
var cantidad:int=100; stage.addEventListener(Event.ENTER_FRAME,crearMalos); stage.addEventListener(KeyboardEvent.KEY_DOWN, teclaPulsada); stage.addEventListener(KeyboardEvent.KEY_UP, teclaLevantada); stage.addEventListener(Event.ENTER_FRAME, comprueba); function teclaPulsada(event:KeyboardEvent):void{ if(event.keyCode==Keyboard.RIGHT){ prota.x+=10; prota.play() } if(event.keyCode==Keyboard.LEFT){ prota.x-=10; prota.play() } if(event.keyCode== Keyboard.SPACE){ var bala:Bala=new Bala; bala.x=prota.x; bala.y=prota.y; addChild(bala); } } function teclaLevantada(event:KeyboardEvent):void{ if(event.keyCode==Keyboard.RIGHT){ prota.x+=10; prota.play() } if(event.keyCode==Keyboard.LEFT){ prota.x-=10; prota.play() } } function comprueba(event:Event):void{ if(malo.hitTestObject(prota)){ trace("Bala a tocado a prota"); } } function crearMalos(event:Event){ if(cantidad<1){ var malo:Malo=new Malo; malo.x=Math.random()*450; addChild(malo); cantidad=100; }else{ cantidad--; } }
al ejecutarlo me pone este error:
Código :
1120: Acceso a una propiedad malo no definida.
es en el hitTestObject y creo que es porque la variable se crea en otra funcion
como puedo arreglarlo? he probardo a poner fuera: var malo:Malo= new Malo; fuera pero tambien da fallo
a ver si podeis ayudarme
un saludo y gracias