CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 26 Abr 2018 20:20

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 34 mensajes ]  Ir a página Anterior  1, 2, 3
Autor Mensaje
NotaPublicado: 12 Mar 2011 16:22 
Desconectado
Yiepp
Yiepp

Registrado: 01 Mar 2011 20:20
Mensajes: 77
Estoy mirando el tema de contenedores y tengo un par de questions:

- En el mapa:
HABITACION --contiene--> ARMARIO --contiene--> CAJA --contiene--> LIBRO

- En el juego:
mirar habitacion ----> Es una habitacion. Hay un armario
mirar caja ----------> Es una caja
cerrar armario ------> Has cerrado el armario
mirar caja ----------> Que pretendes mirar?


Okey. Funciona segun esperaba.
Pero, no he puesto en ningun momento que el armario fuera contenedor (no he marcado el checkbox).
¿Como sabe el sistema que la caja esta dentro del armario? - Intuyo que por la relacion "contiene" del mapa. Vale.
Entonces, ¿para que sirve el checkbox "contenedor"?

Y otra cosa, ¿donde se indicaba que un objeto estuviera inicialmente cerrado? - ¿era creando una propiedad? .. debo estar saturada porque no recuerdo como se hacía.


Arriba
 Perfil  
 
NotaPublicado: 12 Mar 2011 16:47 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5289
Ubicación: Coruña
kalel099 escribió:
Okey. Funciona segun esperaba.
Pero, no he puesto en ningun momento que el armario fuera contenedor (no he marcado el checkbox).
¿Como sabe el sistema que la caja esta dentro del armario? - Intuyo que por la relacion "contiene" del mapa. Vale.
Entonces, ¿para que sirve el checkbox "contenedor"?

Pues serviría para crear un contenedor que inicialmente no contenga nada. Efectivamente, cuando tú pones una relación "contiene", PUCK "deduce" que ese objeto es un contenedor aunque no lo hayas marcado como tal. De hecho, lo marca en el fichero (si guardas el fichero y luego lo abres, verás que la marca de "contenedor" aparece en el objeto aunque tú no la hayas puesto específicamente).

Visto eso, puedes pensar "pero entonces el checkbox de contenedor no hace falta"; pero sí que hace falta, porque si quieres que un contenedor empiece vacío no puedes identificarlo como tal a base de poner relaciones "contiene", ya que inicialmente no tendrá ninguna.

kalel099 escribió:
Y otra cosa, ¿donde se indicaba que un objeto estuviera inicialmente cerrado? - ¿era creando una propiedad? .. debo estar saturada porque no recuerdo como se hacía.

Efectivamente, se trata de poner la propiedad "closed" a true.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 12 Mar 2011 18:13 
Desconectado
Yiepp
Yiepp

Registrado: 01 Mar 2011 20:20
Mensajes: 77
Perfecto pues el tema de contenedores. Al menos con lo que estuve probando y demas.

Aprovecho para preguntar otra cosa. (Hoy tengo el día pregunton xD)

He estado mirando el tema de componentes.
Me gusta como los representa en el fichero XML y la integracion en el panel de la room, pero acabo de ver un comportamiento que me crea dudas.

- Mapa: HABITACION --contiene--> ARMARIO
- Componente de HABITACION: ARBOL+una descripcion
- Objeto ARMARIO: marcamos checkbox "fijo en el sitio"

- Juego:
mirar armario ---> Es un armario de madera
mirar arbol -----> Es un arbol con hojas
coger armario --> No tiene mucho sentido coger eso.
coger arbol ----> ¿Que pretendes coger?


Me sorprendio esa respuesta, ya que esperaba que me dijera lo mismo para el arbol que para el armario. Es decir, parece que no reconoce que haya un arbol en la habitacion. Me esperaba una respuesta en la misma linea que los objetos fijados en el sitio.
La implementacion de ambos es diferente, supongo. Por eso una cosa es un objeto, y otra un componente. Ok. Pero, ¿te basaste en algo concreto para que el sistema reaccione asi, o simplemente lo dejas para que nosotros podamos implementarlo a nuestro gusto?


Arriba
 Perfil  
 
NotaPublicado: 12 Mar 2011 22:05 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5289
Ubicación: Coruña
Por defecto las "descripciones de componente" son sólo eso, descripciones. O sea, esos objetos sólo soportan el comando "mirar" (es algo similar a los objetos que otros sistemas llaman "escenario" o "decorado"), no están pensados para interactuar con ellos de otra manera. Se supone que para crear interacciones más complejas lo normal sería crear entidades de pleno derecho (sean o no "fijas en el sitio").

Ahora bien, si se quiere definir una respuesta a comandos que no sean "mirar" para esos objetos, se puede, utilizando el método que aparece en PUCK como Insertar código -> Redefinir métodos de habitación -> Método de análisis de la entrada sobre componentes de habitación. Eso te proporciona un método parseCommand especial para responder a órdenes que hagan referencia a las descripciones de componentes.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 34 mensajes ]  Ir a página Anterior  1, 2, 3

Todos los horarios son UTC + 1 hora


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Saltar a:  
Desarrollado por phpBB® Forum Software © phpBB Group
Traducción al español por Huan Manwë para phpBB-Es.COM