Class: cArma
cObjeto ----+
|
cObjetoPersistente ----+
|
cObjetoVolador ----+
|
cArma
Description:
La clase cArma esta pensada como una clase abtracta. En ella se encuentran
características comunes a todas las armas.
Unit:
Armas
(Armas.pas)
Constructors:
-
constructor create( pos: cVector = nil; vel: cVector = nil; dim: tLongitud = 1;
-
Constructor
Methods:
-
function mActivo: boolean;
-
Devuelve true si el arma todavia tiene alcance
-
procedure mActualizarDuracion( dt: tTiempo );
-
Actualiza el alcance del arma, que va disminuyendo a medida que pasa el tiempo
-
procedure mDesSerializar( str: string ); override;
-
Recrea el objeto a partir de una cadena de texto con el objeto
serializado.
-
function mGetAlcance: tLongitud;
-
Método para obtener el alcance del arma
-
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 mGetVelMax: tLongitud;
-
Método para obtener el alcance del arma
-
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 mSetAlcance( alc: tLongitud );
-
Método para obtener el alcance del arma
constructor create( pos: cVector = nil; vel: cVector = nil; dim: tLongitud = 1;
- Este constructor es protegido porque solo va a ser utilizado por subclases
- Parameters
-
pos
: Posicion inicial -
vel
: Velocidad inicial -
dim
: Dimensión del objeto volador (radio, en metros) -
pot
: Potencia del objeto volador (cantidad de daño que hace por intervalode tiempo) -
ene
: Energía del objeto volador(cantidad de daño que soporta antes de ser destruido) -
alcance
: Tiempo que debe pasar para que el arma se destruya si no impactó con ningún objeto volador
function mActivo: boolean;
- Returns
- true si todavía tiene alcance, false si no
procedure mActualizarDuracion( dt: tTiempo );
- Actualiza el alcance del arma, que va disminuyendo a medida que pasa el tiempo
- Parameters
-
dt
: Intervalo de tiempo
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 mGetAlcance: tLongitud;
- Returns
- Alcance del arma
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 mGetVelMax: tLongitud;
- Returns
- Velocidad maxima del arma
procedure mMover( dt: tTiempo ); override;
- Mueve el arma basado en su posición y velocidad actual y un intervalo de tiempo
- Parameters
-
dt
: Intervalo de tiempo
function mSerializar: string; override;
- Returns
- Cadena de texto con el objeto serializado.
procedure mSetAlcance( alc: tLongitud );
- Método para establecer el alcance del arma
- Parameters
-
alc
: Alcance del arma