Class: cMisilDirigido
cObjeto ----+
|
cObjetoPersistente ----+
|
cObjetoVolador ----+
|
cArma ----+
|
cMisil ----+
|
cMisilDirigido
Description:
El misil dirigido es un tipo de arma avanzada. Persigue a su objetivo hasta que lo alcanza o
hasta que se le acaba el alcance. Hace un daño alto, su velocidad es mediana y tiene un gran alcance.
Características:
Dimensión 0,7 metros (70 cm)
Potencia: 30 Cantidad de daño que hace por intervalo de tiempo
Energía: 1 Cantidad de daño que soporta antes de ser destruída
Velocidad: 0,25 metros/milisegundos (900 km/h)
Alcance: 20000 milisegundos (20 segundos, 5 km)
Area de Lock: 2000 metros (2 km)
Unit:
Armas
(Armas.pas)
Constructors:
-
constructor create( obj: cObjetoVolador; pos: cVector = nil ); overload;
-
Constructor
Methods:
-
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 mGetDebugInfo( debugLevel: tDebugInfo = DI_MINI ): string; override;
-
Método heredado que devuelve un string con el estado del Objeto. Se utiliza para depurar
y la información entregada depende del parámetro tDebugInfo.
-
function mGetObjetivo: cObjetoVolador;
-
Obtiene el objetivo del misil dirigido
-
procedure mModificarVelocidad;
-
Método que calcula la nueva velocidad basandose en al posicion del objetivo
-
procedure mMover( dt: tTiempo ); override;
-
Método heredado, se sobreescribe porque se le agrega alguna funcionalidad
-
function mSerializar: string; override;
-
Devuelve una cadena de texto con el objeto serializado.
-
procedure mSetObjetivo( ov: cObjetoVolador );
-
Establece el objetivo del misil dirigido
constructor create( obj: cObjetoVolador; pos: cVector = nil ); overload;
- Crea una nueva instancia.
- Parameters
-
obj
: Objeto volador al que perseguirá (objetivo) -
pos
: Vector posición
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;
- Método heredado, se sobreescribe porque se dibuja de forma distinta
function mGetDebugInfo( debugLevel: tDebugInfo = DI_MINI ): string; override;
- Devuelve el estado del objeto basandose en la cantidad de datos requeridos.
@return Cadena de texto con el estado del Objeto.
- Parameters
-
debugLevel
: Cantidad de información requerida
function mGetObjetivo: cObjetoVolador;
- Returns
- Objetivo del misil dirigido.
procedure mModificarVelocidad;
- Método que calcula la nueva velocidad basandose en al posicion del objetivo
procedure mMover( dt: tTiempo ); override;
- Mueve el arma basado en su posición y velocidad actual, su objetivo y un intervalo de tiempo
- Parameters
-
dt
: Intervalo de tiempo
function mSerializar: string; override;
- Returns
- Cadena de texto con el objeto serializado.
procedure mSetObjetivo( ov: cObjetoVolador );
- Establece el objetivo del misil dirigido
- Parameters
-
ov
: Nuevo objetivo