2 <H2>Class: cEspacio</H2>
\r
3 <pre> <A HREF=cObjeto.html>cObjeto</A> ----+
\r |
\r <A HREF=cObjetoPersistente.html>cObjetoPersistente</A> ----+
\r |
\r cEspacio
\r</pre><hr>
\r
4 <B>Description:</B><BR>Se encarga de controlar la interacción entre
\r
5 las naves y el responsable de manejar el tiempo.
\r
6 <p><B>Unit:</B><BR><A HREF=Espacio.html>Espacio</A>
\r
7 <code> <A HREF=Espacio.pas>(Espacio.pas)</code></A><BR><BR>
\r
8 <p><B>Constructors:</B><BR>
\r
11 <IMG SRC=public.gif>
\r
12 <A HREF="cEspacio.html#0">constructor create( np: cNavePropia = nil; objetos: TList = nil; dt: tTiempo = 25 );</A><BR>
\r
15 Constructor. La lista que se pasa NO debe incluir la nave propia
\r
18 <p><B>Methods:</B><BR>
\r
21 <IMG SRC=public.gif>
\r
22 <A HREF="cEspacio.html#1">destructor destroy; override;</A><BR>
\r
28 <IMG SRC=public.gif>
\r
29 <A HREF="cEspacio.html#2">procedure mActualizar;</A><BR>
\r
32 Actualiza el Espacio. En esto se incluye mover las naves, detectar colisiones y tomar las
\r
33 desiciones necesarias según sea el caso.
\r
36 <IMG SRC=protected.gif>
\r
37 <A HREF="cEspacio.html#3">procedure mActualizarObjetoVolador( ov: cObjetoVolador );</A><BR>
\r
40 Actualiza el estado de un objeto según sea tu tipo
\r
43 <IMG SRC=public.gif>
\r
44 <A HREF="cEspacio.html#4">procedure mAgregarObjeto( ov: cObjetoVolador );</A><BR>
\r
47 Agrega un Objeto Volador al Espacio
\r
50 <IMG SRC=protected.gif>
\r
51 <A HREF="cEspacio.html#5">function mBuscarDuplicado( ov: cObjetoVolador ): cObjetoVolador;</A><BR>
\r
54 Busca el duplicado de un objeto volador
\r
57 <IMG SRC=protected.gif>
\r
58 <A HREF="cEspacio.html#6">procedure mComunicarPosicion( nEsp: cNaveEspia );</A><BR>
\r
61 Método que se encarga de avisar al resto de las naves enemigas que estan cerca de una
\r
62 espia sobre la ultima posicion de la nave propia.
\r
65 <IMG SRC=public.gif>
\r
66 <A HREF="cEspacio.html#7">procedure mDesSerializar( str: string ); override;</A><BR>
\r
69 Recrea el objeto a partir de una cadena de texto con el objeto
\r
73 <IMG SRC=protected.gif>
\r
74 <A HREF="cEspacio.html#8">procedure mDestruir( ov: cObjetoVolador );</A><BR>
\r
77 Destruye un Objeto Volador
\r
80 <IMG SRC=protected.gif>
\r
81 <A HREF="cEspacio.html#9">procedure mDetectarColision;</A><BR>
\r
84 Procedimiento que evalua las posiciones de los Objetos Voladores que se encuentran en el espacio,
\r
85 verificando 2 a 2 si hay una colisión.
\r
88 <IMG SRC=protected.gif>
\r
89 <A HREF="cEspacio.html#10">procedure mEliminarDuplicados;</A><BR>
\r
92 Elimina los objetos duplicados después de recuperarlos de una serialización
\r
95 <IMG SRC=public.gif>
\r
96 <A HREF="cEspacio.html#11">function mGetDebugInfo( debugLevel: tDebugInfo = DI_MINI ): string; override;</A><BR>
\r
99 Método heredado que devuelve un string con el estado del Objeto. Se utiliza para depurar
\r
100 y la información entregada depende del parámetro tDebugInfo.
\r
103 <IMG SRC=public.gif>
\r
104 <A HREF="cEspacio.html#12">function mGetNavePropia: cNavePropia;</A><BR>
\r
107 Método que obtiene la nave propia del espacio (este método es probable que deje de exstir)
\r
110 <IMG SRC=public.gif>
\r
111 <A HREF="cEspacio.html#13">function mGetObjetos: TList;</A><BR>
\r
114 Obtiene la lista de Objetos Voladores del Espacio
\r
117 <IMG SRC=public.gif>
\r
118 <A HREF="cEspacio.html#14">function mQuitarObjeto( ov: cObjetoVolador ): boolean;</A><BR>
\r
121 Quita un Objeto Volador del Espacio. Devuelve true si lo saco y false si no existia
\r
124 <IMG SRC=public.gif>
\r
125 <A HREF="cEspacio.html#15">function mSerializar: string; override;</A><BR>
\r
128 Devuelve una cadena de texto con el objeto serializado.
\r
131 <IMG SRC=public.gif>
\r
132 <A HREF="cEspacio.html#16">function mSetNavePropia( np: cNavePropia ): cNavePropia;</A><BR>
\r
135 Método para cambiar la nave propia. Devuelve un puntero a la nave propia vieja.
\r
138 <IMG SRC=public.gif>
\r
139 <A HREF="cEspacio.html#17">function mSetObjetos( l: TList ): TList;</A><BR>
\r
142 Cambia la lista de Objetos Voladores del Espacio, devolviendo un puntero a la lista vieja
\r
146 <p><IMG SRC=constructors.gif>
\r
147 <A NAME="0"></A><P>
\r
148 <IMG SRC=public_big.gif>
\r
149 <CODE>constructor create( np: cNavePropia = nil; objetos: TList = nil; dt: tTiempo = 25 );</CODE>
\r
152 </dd><dd><B>Parameters</B></dd><dd> <CODE>np </CODE> : Nave propia a utilizar</dd><dd> <CODE>objetos </CODE> : Lista de objetos voladores (sin incluir la nave propia!)</dd><dd> <CODE>dt </CODE> : Intervalo de tiempo</dd><p>
\r
153 </dl></dd></dl><HR>
\r
154 <p><IMG SRC=methods.gif>
\r
155 <A NAME="1"></A><P>
\r
156 <IMG SRC=public_big.gif>
\r
157 <CODE>destructor destroy; override;</CODE>
\r
159 <dd>Destructor</dd><p>
\r
160 </dl></dd></dl><HR>
\r
161 <A NAME="2"></A><P>
\r
162 <IMG SRC=public_big.gif>
\r
163 <CODE>procedure mActualizar;</CODE>
\r
165 <dd>Actualiza el Espacio. En esto se incluye mover las naves, detectar colisiones y tomar las
\r
166 desiciones necesarias según sea el caso.</dd><p>
\r
167 </dl></dd></dl><HR>
\r
168 <A NAME="3"></A><P>
\r
169 <IMG SRC=protected_big.gif>
\r
170 <CODE>procedure mActualizarObjetoVolador( ov: cObjetoVolador );</CODE>
\r
172 <dd>Actualiza el estado de un objeto volador, dependiendo de que tipo de objeto sea.
\r
173 </dd><dd><B>Parameters</B></dd><dd> <CODE>ov </CODE> : Objeto Volador a actualizar</dd><p>
\r
174 </dl></dd></dl><HR>
\r
175 <A NAME="4"></A><P>
\r
176 <IMG SRC=public_big.gif>
\r
177 <CODE>procedure mAgregarObjeto( ov: cObjetoVolador );</CODE>
\r
179 <dd>Agrega un Objeto Volador al Espacio
\r
180 </dd><dd><B>Parameters</B></dd><dd> <CODE>ov </CODE> : Objeto volador a agregar</dd><p>
\r
181 </dl></dd></dl><HR>
\r
182 <A NAME="5"></A><P>
\r
183 <IMG SRC=protected_big.gif>
\r
184 <CODE>function mBuscarDuplicado( ov: cObjetoVolador ): cObjetoVolador;</CODE>
\r
186 <dd>Busca el duplicado de un objeto volador
\r
187 </dd><dd><B>Parameters</B></dd><dd> <CODE>ov </CODE> : Objeto volador al cual se le quiere encontrar un duplicado</dd><dd><B>Returns</B></dd><dd> Objeto Volador duplicado de ov</dd><p>
\r
188 </dl></dd></dl><HR>
\r
189 <A NAME="6"></A><P>
\r
190 <IMG SRC=protected_big.gif>
\r
191 <CODE>procedure mComunicarPosicion( nEsp: cNaveEspia );</CODE>
\r
193 <dd>Método que se encarga de avisar al resto de las naves enemigas que estan cerca de una
\r
194 espia sobre la ultima posicion de la nave propia.
\r
195 </dd><dd><B>Parameters</B></dd><dd> <CODE>nEsp </CODE> : Nave espía que está avisando</dd><p>
\r
196 </dl></dd></dl><HR>
\r
197 <A NAME="7"></A><P>
\r
198 <IMG SRC=public_big.gif>
\r
199 <CODE>procedure mDesSerializar( str: string ); override;</CODE>
\r
201 <dd>Recrea el objeto a partir de una cadena de texto con el objeto
\r
203 </dd><dd><B>Parameters</B></dd><dd> <CODE>str </CODE> : Cadena de texto con el objeto serializado.</dd><p>
\r
204 </dl></dd></dl><HR>
\r
205 <A NAME="8"></A><P>
\r
206 <IMG SRC=protected_big.gif>
\r
207 <CODE>procedure mDestruir( ov: cObjetoVolador );</CODE>
\r
209 <dd>Destruye un objeto volador, liberando memoria y eliminandolo de la lista
\r
210 </dd><dd><B>Parameters</B></dd><dd> <CODE>ov </CODE> : Objeto Volador a destruir</dd><p>
\r
211 </dl></dd></dl><HR>
\r
212 <A NAME="9"></A><P>
\r
213 <IMG SRC=protected_big.gif>
\r
214 <CODE>procedure mDetectarColision;</CODE>
\r
216 <dd>Procedimiento que evalua las posiciones de los Objetos Voladores que se encuentran en el espacio,
\r
217 verificando 2 a 2 si hay una colisión.</dd><p>
\r
218 </dl></dd></dl><HR>
\r
219 <A NAME="10"></A><P>
\r
220 <IMG SRC=protected_big.gif>
\r
221 <CODE>procedure mEliminarDuplicados;</CODE>
\r
223 <dd>Elimina los objetos duplicados después de recuperarlos de una serialización</dd><p>
\r
224 </dl></dd></dl><HR>
\r
225 <A NAME="11"></A><P>
\r
226 <IMG SRC=public_big.gif>
\r
227 <CODE>function mGetDebugInfo( debugLevel: tDebugInfo = DI_MINI ): string; override;</CODE>
\r
229 <dd>Devuelve el estado del objeto basandose en la cantidad de datos requeridos.
\r
230 @return Cadena de texto con el estado del Objeto.
\r
231 </dd><dd><B>Parameters</B></dd><dd> <CODE>debugLevel </CODE> : Cantidad de información requerida</dd><p>
\r
232 </dl></dd></dl><HR>
\r
233 <A NAME="12"></A><P>
\r
234 <IMG SRC=public_big.gif>
\r
235 <CODE>function mGetNavePropia: cNavePropia;</CODE>
\r
237 <dd></dd><dd><B>Returns</B></dd><dd> Instancia de la nave propia que se encuentra en el espacio (como puntero)</dd><p>
\r
238 </dl></dd></dl><HR>
\r
239 <A NAME="13"></A><P>
\r
240 <IMG SRC=public_big.gif>
\r
241 <CODE>function mGetObjetos: TList;</CODE>
\r
243 <dd></dd><dd><B>Returns</B></dd><dd> Lista de objetos del espacio (como puntero)</dd><p>
\r
244 </dl></dd></dl><HR>
\r
245 <A NAME="14"></A><P>
\r
246 <IMG SRC=public_big.gif>
\r
247 <CODE>function mQuitarObjeto( ov: cObjetoVolador ): boolean;</CODE>
\r
249 <dd>Quita un Objeto Volador del Espacio. Devuelve true si lo saco y false si no existia
\r
250 (esto lo quita del espacio, no lo destruye)
\r
251 </dd><dd><B>Parameters</B></dd><dd> <CODE>ov </CODE> : Objeto a quitar del espacio</dd><dd><B>Returns</B></dd><dd> <i>true</i> si se quitó, <i>false</i> si no estaba en el espacio</dd><p>
\r
252 </dl></dd></dl><HR>
\r
253 <A NAME="15"></A><P>
\r
254 <IMG SRC=public_big.gif>
\r
255 <CODE>function mSerializar: string; override;</CODE>
\r
257 <dd></dd><dd><B>Returns</B></dd><dd> Cadena de texto con el objeto serializado.</dd><p>
\r
258 </dl></dd></dl><HR>
\r
259 <A NAME="16"></A><P>
\r
260 <IMG SRC=public_big.gif>
\r
261 <CODE>function mSetNavePropia( np: cNavePropia ): cNavePropia;</CODE>
\r
263 <dd></dd><dd><B>Returns</B></dd><dd> Lista de objetos del espacio (como puntero)</dd><p>
\r
264 </dl></dd></dl><HR>
\r
265 <A NAME="17"></A><P>
\r
266 <IMG SRC=public_big.gif>
\r
267 <CODE>function mSetObjetos( l: TList ): TList;</CODE>
\r
269 <dd>Cambia la lista de Objetos Voladores del Espacio, devolviendo un puntero a la lista vieja
\r
270 </dd><dd><B>Parameters</B></dd><dd> <CODE>l </CODE> : Nueva lista de objetos a asignarle al espacio</dd><dd><B>Returns</B></dd><dd> Vieja lista de objetos del espacio</dd><p>
\r
271 </dl></dd></dl><HR>
\r