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.
