Class: cNaveEspia
cObjeto ----+
|
cObjetoPersistente ----+
|
cObjetoVolador ----+
|
cNave ----+
|
cNaveEnemiga ----+
|
cNaveEspia
Description:
Es una nave sin armas que se desplaza por el epacio
hasta que encuentra una nave propia, en ese momento empieza a huir avisando a
las demas naves enemigas la ultima posicion de la nave propia.
Características:
Dimensión: 10 metros
Potencia: 1 Cantidad de daño que hace por intervalo de tiempo
Energía: 30 Cantidad de daño que soporta antes de ser destruída
Velocidad máxima: 0,2 metros/milisegundos (720 km/h)
Campo de radar: 2000 metros (2 km)
Misiles: 0
Misiles Dirigidos: 0
Unit:
NavesEnemigas
(NavesEnemigas.pas)
Constructors:
-
constructor create( pos : cVector = nil; vel : cVector = nil );
-
Constructor
Methods:
-
destructor destroy; override;
-
Destructor
-
function mAvisando: boolean;
-
Método que indica si está avisando
-
procedure mDesSerializar( str: string ); override;
-
Recrea el objeto a partir de una cadena de texto con el objeto
serializado.
-
function mDibujar: tObjetosVoladores; override;
-
Método heredado, se sobreescribe porque se dibuja de forma distinta
-
function mDisparar( dT: tTiempo; ov : cObjetoVolador = nil ): cArma; override;
-
Método heredado, se sobreescribe porque esta nave en particular no puede disparar
-
function mGetPosicionEnemiga: cVector;
-
Método que devuelve la última posición en dónde vió a la nave propia (si está avisando)
-
procedure mModificarVelocidad( np: cNavePropia; modulo: tLongitud = -1 ); override;
-
Método heredado se modifica porque su forma de modificar la velocidad es diferente al
resto de las naves enemigas
-
procedure mReaccionar( np : cNavePropia );override;
-
Método heredado que hace que la nave reaccione ante la presencia
de la nave propia (en este caso huirá y empezará a avisar al resto de las naves que encuentre
sobre la última posición de la nave propia)
-
function mSerializar: string; override;
-
Devuelve una cadena de texto con el objeto serializado.
constructor create( pos : cVector = nil; vel : cVector = nil );
- Crea una instancia de una nave espía.
- Parameters
-
pos
: Vector posición -
vel
: Vector velocidad
destructor destroy; override;
- Destructor
function mAvisando: boolean;
- Returns
- true si está avisando, false si no lo está
procedure mDesSerializar( str: string ); override;
- Recrea el objeto a partir de una cadena de texto con el objeto
serializado.
- Parameters
-
str
: Cadena de texto con el objeto serializado.
function mDibujar: tObjetosVoladores; override;
- Returns
- Última posición donde detectó a la nave propia (nil si no la detecto nunca)
function mDisparar( dT: tTiempo; ov : cObjetoVolador = nil ): cArma; override;
- Hace que se dispare un arma
- Parameters
-
ov
: Objetivo del disparo - Returns
- Arma disparada (o nil si no se puede disparar ningún arma)
function mGetPosicionEnemiga: cVector;
- Método que devuelve la última posición en dónde vió a la nave propia (si está avisando)
procedure mModificarVelocidad( np: cNavePropia; modulo: tLongitud = -1 ); override;
- Modifica la velocidad de la nave en base a la nave propia.
- Parameters
-
np
: Nave propia con la cual se calculará la dirección de la nueva velocidad -
modulo
: Nuevo módulo de la velocidad
procedure mReaccionar( np : cNavePropia );override;
- Método heredado que hace que la nave reaccione ante la presencia
de la nave propia (en este caso huirá y empezará a avisar al resto de las naves que encuentre
sobre la última posición de la nave propia)
- Parameters
-
np
: Nave Propia con la cual esta reaccionando
function mSerializar: string; override;
- Returns
- Cadena de texto con el objeto serializado.