CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 26 Mar 2019 11:53

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 48 mensajes ]  Ir a página Anterior  1, 2, 3, 4
Autor Mensaje
 Asunto:
NotaPublicado: 04 May 2009 17:03 
Desconectado
Grafista
Grafista
Avatar de Usuario

Registrado: 04 Sep 2008 17:23
Mensajes: 734
Supongo que tienes razón Jarel... había creado el hilo porque los problemas que os he estado planteando me parecían dudas tontas de verdad. Pero también es verdad que tal vez le surjan los mismos problemas a algún otro novato y le iba a resultar más sencillo encontrar vuestras respuestas si se hubiesen planteado en hilos nuevos... lo tendré presente a partir de ahora.

¡Un saludo!


Última edición por Makinaimo el 05 May 2009 13:27, editado 1 vez en total

Arriba
 Perfil  
 
 Asunto:
NotaPublicado: 05 May 2009 03:30 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 24 Ago 2007 00:41
Mensajes: 2023
Ubicación: Chile
Para mí no son dudas tontas. De hecho, me han hecho pensar bastante al estudiarlas. Y sobre todo, me han parecido muy interesantes los códigos aportados por Baltasar. Muy buen objeto de estudio. :)

_________________
Eliuk Blau
eliukblau (AT) gmail.com
http://www.caad.es/eliukblau/


Arriba
 Perfil  
 
NotaPublicado: 05 May 2009 09:06 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 23 Abr 2004 08:49
Mensajes: 2910
Ubicación: España (Galicia)
baltasarq escribió:
Hola !

Makinaimo escribió:
Al realizar acciones sobre objetos que no están en la habitación, creo que no hay avance de turno y no se imprime el mensaje del daemon.

Código:
> canta
La-la-la.
Daemon dice cosas....

> ex partido madrid-barÇa
No veo eso que dices.

> canta
La-la-la.
Daemon dice cosas....



Al realizarse una acción sobre un objeto que no existe, se entiende que el usuario se ha equivocado al teclear, o algo así, y que no debe correr un turno. Exactamente lo mismo que sucede cuando tecleas "grabar" o "recuperar", no corre un turno más.

En el primer caso, se trata de un error, en el segundo, de una "meta acción".

Por tanto, primero debes plantearte si es realmente correcto que eso suceda. En segundo lugar, si quieres realmente hacer eso, tendrás que referirte al objeto mensajes de librería, y capturar el mensaje adecuado.

Puedes referirte al DM4 para saber qué mensajes quieres capturar. Esto te sirve para cambiarlos o para hacer algo más.

http://www.inform-fiction.org/manual/html/sa4.html

En este caso, estamos hablando del mensaje fallido número 2 para la acción "examine":

Código:
object LibraryMessages
with
  before [;
     examine:
         if ( lm_n == 2 ) {
                object.daemon();
                rfalse; ! El mensaje de la librería se imprime igual.
         }
  ]
;


Eso visualizaría lo que tú quieres y, después, lo del daemon. Quizás lo prefieras así:

Código:
object LibraryMessages
with
  after [;
     examine:
         if ( lm_n == 2 ) {
                print "No hay de eso por aquí.^";
                object.daemon();
                rtrue;
         }
  ]
;


Quizás funcione igualmente con el after, la verdad es que así nunca lo he probado:

Código:
object LibraryMessages
with
  after [;
     examine:
         if ( lm_n == 2 ) {
                object.daemon();
                rfalse;
         }
  ]
;


...y bueno, eso si sólo lo quieres para ese caso específico, si quieres hacerlo más genérico, quizás puedas hacer algo así:

Código:
object LibraryMessages
with
  after [;
     object.daemon();
  ],
;


como ves, hay muchas posibilidades.
Espero haberte ayudado.

Salud !

Baltasar

_________________
-- Baltasar, el arquero


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

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