Ahora mi problema es que hice dos Clases, una llamada "heroe" que es el que dispara y otra llamada Enemigo que es la que recibe los disparos y es donde se almacena el comportamiento de bajar vida, desaparecer, etc. Por último a esta le extiendo una subclase llama "e1" la cual contiene los valores de "vida", etc que se declaran en esa clase padre, y se supone que si coloco "extends Enemigo" debería de tomar esos variables y utilizarlos como si fueran propias nada más agregarles el valor pero cuando le doy DEBUG me sale error de "Acceso a una propiedad no definida "vida"" y así con las otras dos variables, no sé si es que no entendí bien lo de trabajar con subclases, pero quisiera que ustedes me ayudaran a entenderlo puesto que no consigo documentación en español entendible

Acá el código aunque pueden descargar el archivo .fla y las clases .as desde[url=http://www.4shared.com/rar/Wnytd1sZ/Herencia.html][/url]
Clase "heroe":
Código ActionScript :
package { import flash.display.MovieClip; import flash.events.MouseEvent; import flash.events.Event; public class heroe extends MovieClip { public function heroe() { this.addEventListener(MouseEvent.CLICK, disparo); function disparo(e:MouseEvent) { gotoAndPlay(2); } } } }
Clase "Enemigo":
Código ActionScript :
package { import flash.events.Event; import flash.events.MouseEvent; import flash.display.MovieClip; public class Enemigo extends MovieClip { private var vida:int; private var numeroVidas:int; private var daño:int; private var vivoMuerto:Boolean = true; public function Enemigo() { addEventListener(Event.ADDED_TO_STAGE,asdasd); function asdasd(e:Event) { addEventListener(Event.ENTER_FRAME, quitarVida); function quitarVida(e:Event) { if (this.bala.hitTestObject(Enemigo)) { this.vida -= 1; } } } if (vida <= 0) { vivoMuerto = false; } else if (vida >= 1) { vivoMuerto = true; } else if (vivoMuerto == false) { numeroVidas -= 1; } else if (numeroVidas <= 0) { addEventListener(Event.ADDED_TO_STAGE,asdd); function asdd(e:Event) { removeChild(this); } } } } }
Clase "e1":
Código ActionScript :
package { import flash.display.MovieClip; public class e1 extends Enemigo { vida = 5; numeroVidas = 3; daño = 1; public function e1() { } } }
Desde ya muchas gracias.