Aspectos del motor

Estado y evolución del proyecto.

Notapor Bergil » Jue Nov 08, 2007 01:27

No, tranquilo... si de los corresponsales habituales, el único no informático debo ser yo... o sea, que cancha debe haber más que en un campo de cricket (por decir uno grande) o de polo...
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor Jorge » Jue Nov 08, 2007 02:02

Pronto te convertimos en informático, Bergil. :D

Linutux, precisamente iba a publicar ahora el detalle del mediador. Pero antes intentaré responder a tus preguntas.

El mediador no lee los archivos XML. Hay un par de clases que se apoya en las clases generadas por el analizador sintáctico XSD de CodeSynthesis encargado de esa misión. Una de las clases, denominada ItemDataManager, procesa los datos de todos los elementos del juego leídos del archivo items.xml. Son los datos fijos, sin variación, como por ejemplo sus dimensiones, su peso, sus imágenes, sus sombras, el número de fotogramas de sus animaciones, etc. Otra clase es el constructor encargado de fabricar una sala a partir de los datos de alguno de los 301 archivos XML de las salas, es decir, uno por sala. Es la clase RoomBuilder. Los datos de estos archivos son básicamente el tipo de sala y la posición y tipo de comportamiento de los elementos que en ella aparecen.

Definamos al mediador como la clase encargada de mediar, valga la redundancia, entre los distintos componentes de una sala: elementos, losetas, paredes, etc. Creo que así la gente se entera mejor.

Lo que expones es correcto pero profundizaré en ello. Sea un jugador manejando a Head y pulsa la tecla de avance al norte. Entonces sucede lo siguiente: el motor isométrico -¡la clase Isomot!- le dice a la sala que ejecute un ciclo de actualización de datos (de estados). Esto básicamente consiste en actualizar el comportamiento de los objetos. Para ello, que duda cabe, que la sala hace uso del mediador porque es él quien conoce a todos los elementos (rejilla y libres) de una sala. Una vez completado el ciclo de actualización, Isomot da la orden a la sala de dibujarse. Es decir, Isomot ordena dos grandes cosas pero no las hace, las dos grandes cosas en un videojuego: actualizar y representar.

Los personajes, Head, Heels y Head over Heels (en realidad este es el tercer personaje del juego y como tal lo maneja el motor) tiene un tratamiento especial. Gran parte de sus cambios de estado viene provocado por las órdenes del usuario. Por esta razón la sala tiene operaciones especiales para que Isomot pueda comunicarle dichos cambios. Como antes, en última instancia es el mediador el que le dice a Head: muévete una unidad isométrica al norte.

No sé si queda claro y me explico. Como siempre, gustosísimo de responder a vuestras dudas y curiosidades.

Quería puntualizar una cuestión de vocabulario. Os habréis dado cuenta que a las cosas que hay en una sala siempre los llamo elementos. Evito el uso del término objetos -que sería más normal- para no confundirlos con el término "ejemplar de una clase" del paradigma orientado a objetos. Cuando hable de objetos, me estaré refiriendo precisamente a ésto último.

Mañana hablaré del mediador. Se me ha hecho ya muy tarde. :wink:
Avatar de Usuario
Jorge
Administrador
Administrador
 
Mensajes: 1563
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Valdepeñas

Notapor Bergil » Jue Nov 08, 2007 02:06

Hasta la puntualización semántica iba pillando más o menos el sentido de todo... :shock:
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor Jorge » Jue Nov 08, 2007 11:21

Uno de los enfoques para la creación de aplicaciones informáticas es el llamado Paradigma Orientado a Objetos. En este paradigma la palabra objeto es clave y tiene un significado muy concreto: "un objeto es una entidad con identidad propia que combina estados y comportamiento. Un estado cualquiera viene dado por el valor de unos datos y el comportamiento lo establecen procedimientos u operaciones. La identidad del objeto son propiedades que lo diferencia del resto."

Total que desde el punto de vista informático "objeto" tiene mucho peso. En un comentario técnico si empiezo a hablar de los objetos de una sala ¿me referiré a aquellos elementos que se pueden ver o a esas entidades que emplea el motor isométrico para dar forma y vida a dichos elementos? Es confuso. Por eso prefiero hablar de elementos para denominar a lo que se puede ver: una puerta, un muro, una loseta, un telepuerto, un personaje, etc., y dejar el término objeto como vocablo técnico.

Como ejemplo puedo decirte que para mí el elemento Heels son varios objetos.
Avatar de Usuario
Jorge
Administrador
Administrador
 
Mensajes: 1563
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Valdepeñas

Notapor Bergil » Jue Nov 08, 2007 13:39

Vale. Para seguir entendiéndolo: ¿qué objetos integran, para tí, el elemento Heels? :shock:
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor Jorge » Jue Nov 08, 2007 14:47

Heels es un objeto "FreeItem" más un objeto comportamiento más una serie de objetos estado: andando, cayendo, saltando, etc.
Avatar de Usuario
Jorge
Administrador
Administrador
 
Mensajes: 1563
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Valdepeñas

Notapor Bergil » Jue Nov 08, 2007 15:41

O sea, que un elemento es un "objeto", pero cada una de sus características, posibles estados y demás también son "objetos". ¿Voy bien?
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor Jorge » Jue Nov 08, 2007 17:11

Sí, más o menos bien. Sólo que las características van definidas dentro del objeto. Pero, efectivamente, sus posibles estados también son objetos.
Avatar de Usuario
Jorge
Administrador
Administrador
 
Mensajes: 1563
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Valdepeñas

Notapor mjurado2 » Jue Nov 08, 2007 17:33

Por cierto ya que sabeis del tema, me podriais hacer un .bat o algo para que apague el pc desde un icono en el escritorio?
mjurado2
Maestro espía
Maestro espía
 
Mensajes: 133
Registrado: Dom Oct 28, 2007 00:05
Ubicación: Lucena

Notapor Bergil » Jue Nov 08, 2007 17:55

Eso anda por google seguro, alguna vez he visto cosas semejantes...
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor Jorge » Jue Nov 08, 2007 19:27

Apoyo lo que dice Bergil Recuerdo que en Windows 98 tenía un botón de esos. Supongo que para otras versiones de Windows lo habrá también.
Avatar de Usuario
Jorge
Administrador
Administrador
 
Mensajes: 1563
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Valdepeñas

Notapor Bergil » Jue Nov 08, 2007 20:19

He puesto en Google "apagar windows desde un icono" y me ha salido este enlace:

http://www.trucoteca.com/trucos-windows/WindowsXP/crear-un-icono-para-apagar-rapidamente-el-pc-118.html
¿Te sirve?
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor Jorge » Jue Nov 08, 2007 21:03

A mí me serviría. :mrgreen:
Avatar de Usuario
Jorge
Administrador
Administrador
 
Mensajes: 1563
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Valdepeñas

Notapor Bergil » Jue Nov 08, 2007 21:36

Es que elementos, objetos y esas cosas no, pero con el google soy el amo... :D
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor mjurado2 » Jue Nov 08, 2007 22:57

Je je je , ya lo creo gracias.
mjurado2
Maestro espía
Maestro espía
 
Mensajes: 133
Registrado: Dom Oct 28, 2007 00:05
Ubicación: Lucena

AnteriorSiguiente

Volver a El proyecto

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados

cron