!% -~D !% -~S !% +include_path=..\lib\base,..\lib\contrib,..\games\ModusVivendi !Poner "% -~S" (sin las ") permite compilar para generar archivo ModusVivendi.z5 (máquina Z versión 5) !Poner "!% -~D" al principio del archivo (sin las ") permite compilar en modo Release (No Debug) ! "Modus Vivendi" ! ! REALIZADO POR: Sebastián Armas ! ! Copyright (C) 2010 ! CONSTANTES Constant Historia "~Modus Vivendi~^ Un relato de tiempos romanos"; Constant Titular "^Realizado por: Sebastián Armas (Incanus)^ (C) Año 2010^^ Ingresa AYUDA para indicaciones generales y otros comandos.^ Ingresa PISTAS para resolver problemas o salir de atascos.^ Ingresa ANIMAR para alternar entre texto animado y texto normal.^^"; Serial "010101"; Release 1; ! Versión 01.01.01 ! ! Publicación Constant ADMITIR_COMANDO_SALIDAS; ! Constant DEBUG; ! No queremos usar los comandos 'Lugares' y 'Objetos' Constant NO_LUGARES; ! Puntuación con sistema de tareas Constant HAY_TAREAS; Constant PUNTUACION_MAX 10; Constant NUMERO_TAREAS = 12; ! El array que contiene los puntos por cada tarea realizada... ! 0 1 2 3 4 5 6 7 8 9 10 11 (en total son 12 tareas) Array puntuacion_tareas -> 1 1 1 1 1 1 1 1 1 1 1 0; ! (de 1 punto cada una) ! Tenemos Curiosidades Constant HAY_CURIOSIDADES; ! Definiciones para curiosidades [curiosidades; ZIPI_RunMenuT(ZIPI_Menu23); ]; !-------------- Include -------------- Include "zipi.inf"; ! Módulo para Menues Include "EParser"; ! Módulo para InformATE! ! MensajesAlternativos [MensajeMuerte; style fixed; style bold; switch(banderafin) { 3: print "*** Sic transit Roma ***^^"; style roman; 4: print "*** Morituri te salutant ***^^"; style roman; 5: banderafin = 2; print "*** Veni, vidi, vici ***^^"; style roman; } style roman; rfalse; ]; ! Codigo para Puntuacion por Tareas ! Imprimir el nombre de cada tarea dada [ ImprimirTareas tarea; print "por "; switch(tarea) { 0: "orinar en ropa de lavandería"; 1: "matar a pederasta"; 2: "sorprender in fraganti a pederasta"; 3: "matar a pederasta con ayuda del guardia"; 4: "conseguir cadáver para el médico"; 5: "conseguir un conejo"; 6: "conocer a Terentia"; 7: "reparar la rueda del carro"; 8: "conseguir que el legionario nos acompañe a esperar"; 9: "entregar mensaje de Terentia"; 10: "confirmar envío a Terentia"; 11: "traicionar a Terentia"; } ]; ! Imprime el rango que el jugador a conseguido de acuerdo a la ! puntuacion que tiene actualmente [ ImprimirRango; print ", otorgándote el rango de: ~"; switch (puntuacion) { ! la variable global de puntuacion 0 to 1 : print "Paleto"; 2 to 5 : print "Chico de los Mandados"; 6 to 9 : print "Hombre Práctico"; 10 to 10 : print "Factotum"; } print_ret "~."; ]; Include "Msg1P"; ! Módulo para mensajes de InformATE! en primera persona singular ("yo") Include "Acciones"; ! Módulo para InformATE! Include "Gramatica"; ! Módulo para InformATE! Include "Cortos_mod"; ! Módulo para texto animado ATENCION: fue modificado para usar ANIMAR Include "Decorado"; ! Módulo para descripcion de decorados !------------ End Include ------------ ! Ayuda de la Aventura ! Aquí va el código ZIPI ZIPI_Menu ZIPI_Menu1 with ZIPI_titulo "Ayuda de la Aventura", ZIPI_item ZIPI_Menu2 ZIPI_Menu3 ZIPI_Otro2 ! ZIPI_Menu23 ; ZIPI_Menu ZIPI_Menu2 with ZIPI_titulo "Instrucciones", ZIPI_item ZIPI_Otro0 ZIPI_Otro1 ; ZIPI_Menu ZIPI_Menu3 with ZIPI_titulo "Pistas", ZIPI_item ZIPI_Menu4 ZIPI_Menu11 ZIPI_Menu18 ; ZIPI_Menu ZIPI_Menu4 with ZIPI_titulo "Hora IV - ientaculum", ZIPI_item ZIPI_Pista0 ZIPI_Menu5 ZIPI_Menu6 ZIPI_Menu7 ; ZIPI_Menu ZIPI_Menu5 with ZIPI_titulo "Materia prima", ZIPI_item ZIPI_Pista1 ZIPI_Pista2 ; ZIPI_Menu ZIPI_Menu6 with ZIPI_titulo "Materia de estudio", ZIPI_item ZIPI_Pista3 ZIPI_Pista4 ; ZIPI_Menu ZIPI_Menu7 with ZIPI_titulo "Materia de seguridad", ZIPI_item ZIPI_Pista5 ZIPI_Pista6 ZIPI_Menu8 ZIPI_Pista13 ZIPI_Pista14 ; ZIPI_Menu ZIPI_Menu8 with ZIPI_titulo "Obteniendo la materia", ZIPI_item ZIPI_Menu9 ZIPI_Menu10 ; ZIPI_Menu ZIPI_Menu9 with ZIPI_titulo "Por las malas...", ZIPI_item ZIPI_Pista7 ZIPI_Pista8 ZIPI_Pista9 ; ZIPI_Menu ZIPI_Menu10 with ZIPI_titulo "...o por las peores", ZIPI_item ZIPI_Pista10 ZIPI_Pista11 ZIPI_Pista12 ; ZIPI_Menu ZIPI_Menu11 with ZIPI_titulo "Hora VII - prandium", ZIPI_item ZIPI_Menu12 ZIPI_Menu13 ; ZIPI_Menu ZIPI_Menu12 with ZIPI_titulo "En el Foro", ZIPI_item ZIPI_Pista15 ZIPI_Pista16 ZIPI_Pista17 ; ZIPI_Menu ZIPI_Menu13 with ZIPI_titulo "En el Mercado", ZIPI_item ZIPI_Pista18 ZIPI_Menu14 ZIPI_Menu15 ZIPI_Menu16 ; ZIPI_Menu ZIPI_Menu14 with ZIPI_titulo "¿Cómo le compro al Peletero?", ZIPI_item ZIPI_Pista19 ZIPI_Pista20 ; ZIPI_Menu ZIPI_Menu15 with ZIPI_titulo "¿Cómo le compro al Herrero?", ZIPI_item ZIPI_Pista21 ZIPI_Pista22 ; ZIPI_Menu ZIPI_Menu16 with ZIPI_titulo "¿Cómo ayudo al Buhonero?", ZIPI_item ZIPI_Pista23 ZIPI_Menu17 ; ZIPI_Menu ZIPI_Menu17 with ZIPI_titulo "...y el cómo", ZIPI_item ZIPI_Pista24 ZIPI_Pista25 ; ZIPI_Menu ZIPI_Menu18 with ZIPI_titulo "Hora IX - cena", ZIPI_item ZIPI_Menu19 ZIPI_Menu20 ZIPI_Menu22 ; ZIPI_Menu ZIPI_Menu19 with ZIPI_titulo "En el Arco Druso", ZIPI_item ZIPI_Pista26 ZIPI_Pista27 ZIPI_Pista28 ; ZIPI_Menu ZIPI_Menu20 with ZIPI_titulo "En la Tumba de los Escipiones", ZIPI_item ZIPI_Pista29 ZIPI_Menu21 ZIPI_Pista32 ZIPI_Pista33 ; ZIPI_Menu ZIPI_Menu21 with ZIPI_titulo "¿Cómo se puede explorar la tumba con seguridad?", ZIPI_item ZIPI_Pista30 ZIPI_Pista31 ; ZIPI_Menu ZIPI_Menu22 with ZIPI_titulo "En el Foro", ZIPI_item ZIPI_Pista34 ; ZIPI_Menu ZIPI_Menu23 with ZIPI_titulo "Curiosidades y Otros", ZIPI_item ZIPI_Menu24 ZIPI_Otro13 ; ZIPI_Menu ZIPI_Menu24 with ZIPI_titulo "Curiosidades", ZIPI_item ZIPI_Menu25 ZIPI_Menu26 ; ZIPI_Menu ZIPI_Menu25 with ZIPI_titulo "Res publica", ZIPI_item ZIPI_Otro3 ZIPI_Otro4 ZIPI_Otro5 ZIPI_Otro6 ; ZIPI_Menu ZIPI_Menu26 with ZIPI_titulo "Res privata", ZIPI_item ZIPI_Otro7 ZIPI_Otro8 ZIPI_Otro9 ZIPI_Otro10 ZIPI_Otro11 ZIPI_Otro12 ; ZIPI_Pista ZIPI_Pista0 with ZIPI_titulo "¿En qué me ocupo hoy?", ZIPI_pistas "Estás viviendo en una lavandería..." "así que baja a la Lavandería..." "y pregúntale a la dueña de casa..." "con HABLA CON LAVANDERA" "Habla con ella dos veces más, si quieres conocer todas sus necesidades." ; ZIPI_Pista ZIPI_Pista1 with ZIPI_titulo "El qué...", ZIPI_pistas "Si ya hablaste una vez con la Lavandera..." "y miraste el trabajo de los esclavos..." "sabrás qué se usa como detergente en la Lavandería." ; ZIPI_Pista ZIPI_Pista2 with ZIPI_titulo "...y el cómo", ZIPI_pistas "Para conseguir orina..." "ve a la Plaza..." "y fíjate en la fuente." "Bebe de la fuente..." "hasta que entren ganas de orinar." "Luego entra en la Lavandería..." "y haz entrega de la materia prima requerida..." "orinando en las ropas..." "con ORINA EN LAS ROPAS." ; ZIPI_Pista ZIPI_Pista3 with ZIPI_titulo "El qué...", ZIPI_pistas "Si ya hablaste por segunda vez con la Lavandera..." "sabrás que requiere los servicios de un médico." "Dirígete al Foro..." "y fíjate en la muchedumbre..." "en la que verás al Galeno." "Háblale..." "con HABLA CON MEDICO..." "y sabrás qué es lo que pide a cambio de visitar tu barrio." ; ZIPI_Pista ZIPI_Pista4 with ZIPI_titulo "...y el cómo", ZIPI_pistas "Para conseguir su materia de estudio..." "sigue las pistas de la sección ~Materia de Seguridad~ en este menú." "Una vez que ya hayas conseguido tu cometido..." "dirígete de nuevo al Foro..." "y cierra el trato con el Médico..." "hablando con él nuevamente..." "con HABLA CON MEDICO." ; ZIPI_Pista ZIPI_Pista5 with ZIPI_titulo "Identificando la materia", ZIPI_pistas "Si ya hablaste por tercera vez con la Lavandera..." "sabrás que el Guardia está preocupado por algo." "ve a la Plaza..." "y háblale al Guardia..." "con HABLA CON GUARDIA..." "y sabrás qué lo tiene preocupado." ; ZIPI_Pista ZIPI_Pista6 with ZIPI_titulo "Encontrando la materia", ZIPI_pistas "Hay un sólo lugar donde esconderse en la Plaza..." "y ese es el Callejón." "Entra al Callejón..." "y si ya hablaste con el Médico..." "verás a alguien en las sombras." "Fíjate en él o háblale..." "y si ya hablaste con el Guardia..." "sabrás por fin con quién estás tratando." ; ZIPI_Pista ZIPI_Pista7 with ZIPI_titulo "¿Con qué ataco a Deimos?", ZIPI_pistas "Si lo atacamos sin armas, nos mata..." "por lo que tenemos que conseguir algo contundente." "Los niños juegan con una Pelota en la Plaza..." "y la Pelota es de barro cocido y muy dura." "Para conseguir la Pelota..." "juega con los niños..." "con JUEGA CON NIÑOS." ; ZIPI_Pista ZIPI_Pista8 with ZIPI_titulo "¿Cómo ataco a Deimos en el Callejón?", ZIPI_pistas "Una vez que tengas la Pelota..." "entra al callejón desde la Plaza..." "con ENTRA EN CALLEJON." "Luego, atácalo con la Pelota..." "con LANZA PELOTA A DEIMOS o con ATACA A DEIMOS CON PELOTA." ; ZIPI_Pista ZIPI_Pista9 with ZIPI_titulo "¿Cómo ataco a Deimos fuera del Callejón?", ZIPI_pistas "Una vez que tengas la Pelota..." "sube a la Terraza de la Lavandería." "Luego, atácalo con la Pelota..." "con LANZA PELOTA A DEIMOS o con LANZA PELOTA A CALLEJÓN con ATACA A DEIMOS CON PELOTA." ; ZIPI_Pista ZIPI_Pista10 with ZIPI_titulo "¿Cómo sorprendo in fraganti a Deimos?", ZIPI_pistas "Necesitas traer a los niños al Callejón..." "y los niños no dejan de jugar con la Pelota..." "por lo que tienes que arrojar la Pelota al Callejón." "Para conseguir la Pelota..." "juega con los niños..." "con JUEGA CON NIÑOS." "Luego, lanza la Pelota al Callejón..." "con LANZA PELOTA AL CALLEJÓN..." "y los niños entrarán al Callejón en pos de la Pelota..." "seguidos del Guardia." ; ZIPI_Pista ZIPI_Pista11 with ZIPI_titulo "¿Cómo me deshago de los testigos superfluos?", ZIPI_pistas "Asustados y todos, los niños son niños..." "y les encanta jugar con la Pelota..." "por lo que tienes que arrojar la Pelota de vuelta a la Plaza..." "con LANZA PELOTA A LA PLAZA o con JUEGA CON NIÑOS..." "y los niños saldrán del Callejón en pos de la Pelota." ; ZIPI_Pista ZIPI_Pista12 with ZIPI_titulo "¿Cómo ataco a Deimos en el Callejón?", ZIPI_pistas "Si ya atrajiste al Guardia y a los Niños al Callejón..." "y alejaste a los niños del Callejón..." "puedes atacar a Deimos..." "con ATACA A DEIMOS..." "y el Guardia te ayudará a reducir al Pederasta." ; ZIPI_Pista ZIPI_Pista13 with ZIPI_titulo "Asegurando la materia", ZIPI_pistas "Una vez ~neutralizada~ la materia de seguridad..." "necesitas quién la guarde por ti." "Para eso, pídele ayuda al Guardia." "Háblale al Guardia..." "con HABLA CON GUARDIA..." "y él cuidará del ~paquete~ por ti." ; ZIPI_Pista ZIPI_Pista14 with ZIPI_titulo "Entregando la materia", ZIPI_pistas "Una vez que ya hayas conseguido tu cometido..." "dirígete de nuevo al Foro..." "y cierra el trato con el Médico..." "hablando con él nuevamente..." "con HABLA CON MEDICO." ; ZIPI_Pista ZIPI_Pista15 with ZIPI_titulo "¿En qué me ocupo ahora?", ZIPI_pistas "El Foro tiene varios edificios y un Templo." "Prueba entrando en el Templo..." "con ENTRA EN EL TEMPLO." "Adentro, verás a una Sacerdotisa." "Conversa con ella..." "con HABLA CON SACERDOTISA." "Ella te dará el almuerzo y un nuevo encargo a cambio de un Conejo para los sacrificios del Templo." ; ZIPI_Pista ZIPI_Pista16 with ZIPI_titulo "¿Cómo consigo mi almuerzo?", ZIPI_pistas "Si hablaste con la Sacerdotisa..." "deberás conseguir primero un Conejo para que te dé almuerzo." "Podrás conseguirlo en el Mercado..." "sigue las pistas del menú ~En el Mercado~." "Cuando tengas el Conejo, vuelve al Templo..." "y dáselo a la Sacerdotisa..." "con DALE CONEJO A SACERDOTISA." "Te dará de almorzar y recibirás un segundo encargo." ; ZIPI_Pista ZIPI_Pista17 with ZIPI_titulo "¿Cómo cumplo con el nuevo encargo?", ZIPI_pistas "Si la Sacerdotisa ya te dio de almorzar..." "tienes que entregar la correspondencia de Terentia en el Arco Druso, saliendo del Foro." "Para salir del Foro, necesitas transporte." "Vuelve al Mercado..." "ayuda al Buhonero..." "y él te transportará en su Carro hasta el Arco Druso." ; ZIPI_Pista ZIPI_Pista18 with ZIPI_titulo "¿Qué hay a la venta?", ZIPI_pistas "Hay varios puestos en el Mercado." "Examínalos..." "con EXAMINA HERRERÍA, EXAMINA PARRILLA, EXAMINA PELETERÍA o EXAMINA CARRO." "Podrás saber qué mercancías están hoy a la venta." ; ZIPI_Pista ZIPI_Pista19 with ZIPI_titulo "El qué...", ZIPI_pistas "Para saber qué necesita el Peletero..." "habla con él..." "con HABLA CON PELETERO." "El peletero necesita un Cuchillo..." "que puedes conseguir con el Herrero." ; ZIPI_Pista ZIPI_Pista20 with ZIPI_titulo "...y el cómo", ZIPI_pistas "Cuando tengas el Cuchillo, dáselo al Peletero..." "con DALE CUCHILLO AL PELETERO." "El Peletero te dará a cambio un Conejo." "Ve al Templo..." "y dáselo a la Sacerdotisa..." "con DALE CONEJO A SACERDOTISA." "Ella te dará de almorzar y recibirás un segundo encargo." ; ZIPI_Pista ZIPI_Pista21 with ZIPI_titulo "El qué...", ZIPI_pistas "Para saber qué necesita el Herrero..." "habla con él..." "con HABLA CON HERRERO." ; ZIPI_Pista ZIPI_Pista22 with ZIPI_titulo "...y el cómo", ZIPI_pistas "Si aún no tienes algo que interese al Herrero..." "vuelve al Callejón..." "y si hay algo metálico del suelo, cógelo..." "con COGE ALGO y examínalo..." "con EXAMINA ALGO." "Si no ha nada en el Callejón, vuelve a la Plaza..." "y habla con el Guardia..." "con HABLA CON GUARDIA." "Lleva la Daga al Mercado y dásela al Herrero..." "con DALE DAGA AL HERRERO." ; ZIPI_Pista ZIPI_Pista23 with ZIPI_titulo "El qué...", ZIPI_pistas "Si la Sacerdotisa ya te dio un segundo encargo..." "debes salir del Foro y llevar el paquete al Arco Druso, y para eso necesitas transporte." "Vuelve al Mercado y habla con el Buhonero..." "con HABLA CON BUHONERO." ; ZIPI_Pista ZIPI_Pista24 with ZIPI_titulo "Filosóficamente...", ZIPI_pistas "Para levantar algo tan pesado como el Carro..." "haz caso de la sugerencia del Buhonero..." "y busca en el Carro..." "con BUSCA EN EL CARRO." "Encontrarás un Madero para hacer palanca..." "pero necesitas primero algo donde apoyar el Madero..." "como la Piedra que está en el Mercado." ; ZIPI_Pista ZIPI_Pista25 with ZIPI_titulo "Prácticamente...", ZIPI_pistas "Acerca la Piedra, empujándola..." "con EMPUJA LA PIEDRA..." "Luego, pon el Madero encima..." "con PON MADERO EN LA PIEDRA..." "y ahora levanta el Carro..." "con LEVANTA CARRO o EMPUJA MADERO." "El carro ya está reparado..." "y puedes montar en él para ir al Arco Druso..." "con MONTA EN CARRO o SUBE AL CARRO." ; ZIPI_Pista ZIPI_Pista26 with ZIPI_titulo "¿Cómo espero tranquilo?", ZIPI_pistas "Si te quedas demasiado rato..." "verás que el Arco Druso es un sitio peligroso a esta hora." "Vuelve a la Vía Appia al norte..." "conversa con el Legionario..." "con HABLA CON LEGIONARIO." "Te pedirá un favor a cambio de su compañía y protección." "Una vez que cumplas su encargo..." "el soldado te acompañará en el Arco Druso y podrás esperar tranquilo." ; ZIPI_Pista ZIPI_Pista27 with ZIPI_titulo "¿Cómo entrego el paquete?", ZIPI_pistas "Una vez que el Legionario te acompañe a esperar en el Arco Druso..." "verás llegar a alguien que no huye espantado." "Habla con el recién llegado..." "con HABLA CON ALGUIEN..." "y verificarás que es la persona a la que tú esperabas." "Entrégale el paquete de correspondencia..." "con DALE CORREO A MENSAJERO." "El Mensajero te agradecerá y dejará una Litera con esclavos a tu disposición." ; ZIPI_Pista ZIPI_Pista28 with ZIPI_titulo "¿Cómo vuelvo a mi barrio?", ZIPI_pistas "Una vez que hayas entregado el paquete de correspondencia..." "tendrás una Litera con esclavos a tu disposición." "Para volver a tu barrio, sube a la Litera..." "con SUBE A LA LITERA." "Los esclavos te llevarán en la Litera y te dejarán en el Foro." ; ZIPI_Pista ZIPI_Pista29 with ZIPI_titulo "¿Cómo se entra a la tumba?", ZIPI_pistas "Hay tres arcos en la fachada..." "Examínalos..." "con EXAMINA ARCO ESTE, EXAMINA ARCO OESTE o EXAMINA ARCO DEL MEDIO." "Para entrar por alguno de los arcos..." "usa ENTRA POR ARCO ESTE o ESTE; o bien ENTRA POR ARCO MEDIO o BAJA." ; ZIPI_Pista ZIPI_Pista30 with ZIPI_titulo "El qué...", ZIPI_pistas "El interior de la tumba está en penumbras..." "así que necesitas una fuente de luz." "En una pared hay una Antorcha..." "cógela..." "con COGE ANTORCHA..." "y enciéndela..." "con ENCIENDE ANTORCHA." ; ZIPI_Pista ZIPI_Pista31 with ZIPI_titulo "...y el cómo", ZIPI_pistas "Si no tienes con qué encender la Antorcha..." "vuelve a la Vía Appia al Sur..." "y conversa con el Legionario..." "con HABLA CON LEGIONARIO." "Te pedirá un favor y te dará un Bastón de Mando." "Examínalo..." "con EXAMINA BASTÓN..." "y verás que en un extremo tiene un pedernal." "Vuelve a la entrada de la Tumba..." "coge la Antorcha y enciéndela..." "con ENCIENDE ANTORCHA o ENCIENDE ANTORCHA CON BASTON." "Tendrás una fuente de luz para explorar con seguridad." ; ZIPI_Pista ZIPI_Pista32 with ZIPI_titulo "¿Cómo bajo a los niveles inferiores?", ZIPI_pistas "Si te fijas en el arco del medio..." "con EXAMINA ARCO DEL MEDIO." "Verás que desciende en la oscuridad..." "así que necesitas una fuente de luz." "Consigue encender la Antorcha..." "siguiendo las pistas de ~¿Cómo se puede explorar la tumba con seguridad?~" "Si ya tienes la antorcha encendida, podrás ir a los niveles inferiores..." "con ENTRA POR ARCO MEDIO o BAJA." ; ZIPI_Pista ZIPI_Pista33 with ZIPI_titulo "¿Cómo salgo de los niveles inferiores?", ZIPI_pistas "Para conseguir que el Legionario de relevo vuelva contigo..." "conversa con él..." "con HABLA CON LEGIONARIO." "Te pedirá el Bastón de Mando de su camarada." "Dáselo..." "con DALE BASTÓN A LEGIONARIO." "El relevo te acompañará de vuelta a la Vía Appia." ; ZIPI_Pista ZIPI_Pista34 with ZIPI_titulo "¿Cómo termino el encargo?", ZIPI_pistas "Una vez entregado el paquete..." "Terentia te dijo que volvieras al Templo..." "así que te está esperando adentro." "Entra al Templo..." "con ENTRA AL TEMPLO." "Encontrarás a Terentia y habrás cumplido con tu encargo." ; ZIPI_Otro ZIPI_Otro0 with ZIPI_titulo "Comandos Principales", ZIPI_ejecutar [; print "Las órdenes siguientes son básicas y pueden encontrarse en casi cualquier aventura conversacional. El jugador puede tratar siempre de hacer otras acciones.^^"; style fixed; print "ayuda"; style roman; print " : obtener esta ayuda.^"; style fixed; print "puntuacion"; style roman; print " : obtener puntaje acumulado en el juego.^"; style fixed; print "puntuacion total"; style roman; print " : obtener puntaje acumulado en el juego, con detalle por tareas cumplidas.^"; style fixed; print "pistas"; style roman; print " : obtener pistas para resolver el juego (evite la tentación...).^"; style fixed; print "animar"; style roman; print " : alternar texto animado con texto normal.^"; style fixed; print "save, guardar"; style roman; print " : grabar el estado actual de la partida (recomendable...).^"; style fixed; print "load, cargar"; style roman; print " : recuperar un estado de partida ya guardado.^"; style fixed; print "quit, fin, terminar"; style roman; print " : terminar la partida en juego.^^"; style fixed; print "n, norte"; style roman; print " : desplazarse al norte.^"; style fixed; print "s, sur"; style roman; print " : desplazarse al sur.^"; style fixed; print "e, este"; style roman; print " : desplazarse al este.^"; style fixed; print "o, w, oeste"; style roman; print " : desplazarse al oeste.^"; style fixed; print "a, u, arriba, subir"; style roman; print " : subir.^"; style fixed; print "b, d, abajo, bajar"; style roman; print " : bajar.^"; style fixed; print "entrar en x, ir a x"; style roman; print " : ir desde la ubicación actual al lugar x.^"; style fixed; print "subir a x, montar en x"; style roman; print " : subirse al objeto x.^"; style fixed; print "salir, salir de x"; style roman; print " : salir del lugar o del objeto x.^"; style fixed; print "salidas"; style roman; print " : mostrar las salidas del lugar.^"; style fixed; print "i, inventario"; style roman; print " : mostrar una lista de los objetos llevados.^"; style fixed; print "mirar"; style roman; print " : mostrar una descripción del lugar en que estás.^^"; style fixed; print "ex x, examinar x"; style roman; print " : mostrar una descripción del lugar u objeto x.^"; style fixed; print "buscar en x, mirar en x"; style roman; print " : revisar el objeto x para ver si contiene algo más...^"; style fixed; print "leer x"; style roman; print " : si x tiene texto para leer, leer el texto en x.^"; style fixed; print "coger x, dejar x"; style roman; print " : el objeto x pasa a ser o deja de ser llevado.^"; style fixed; print "meter x en y"; style roman; print " : el objeto x deja de ser llevado y queda dentro de y.^"; style fixed; print "sacar y de x"; style roman; print " : el objeto y sale de x y pasa a ser llevado.^^"; style fixed; print "tirar de x"; style roman; print " : tirar del objeto x.^"; style fixed; print "empujar x"; style roman; print " : empujar el objeto x.^"; style fixed; print "empujar x hacia y"; style roman; print " : empujar el objeto x hacia el objeto y.^"; style fixed; print "poner x en y"; style roman; print " : poner el objeto x en el objeto y.^^"; style fixed; print "comer x"; style roman; print " : si x es comestible, cómete x.^"; style fixed; print "beber x"; style roman; print " : si x es bebible, bébete x.^"; style fixed; print "orinar en x"; style roman; print " : orinar en el objeto x.^^"; style fixed; print "quemar x"; style roman; print " : quemar el objeto x.^"; style fixed; print "quemar x con y"; style roman; print " : quemar el objeto x con el objeto y.^"; style fixed; print "encender x con y"; style roman; print " : encender el objeto x con el objeto y.^"; style fixed; print "golpear x con y"; style roman; print " : golpear el objeto x con el objeto y.^^"; style fixed; print "hablar con x"; style roman; print " : hablar el personaje x.^"; style fixed; print "dar y a x"; style roman; print " : dar el objeto y al personaje x.^"; style fixed; print "mostrar y a x"; style roman; print " : mostrar el objeto y al personaje x.^"; style fixed; print "matar x con y"; style roman; print " : matar al personaje x usando el objeto y.^"; ]; ZIPI_Otro ZIPI_Otro1 with ZIPI_titulo "Otros Comandos", ZIPI_ejecutar [; print "Las órdenes, en general, se pueden dar según:^"; style fixed; print ""; style roman; print " o bien^"; style fixed; print " "; style roman; print " o bien^"; style fixed; print " ^"; style roman; ]; ZIPI_Otro ZIPI_Otro2 with ZIPI_titulo "Agradecimientos", ZIPI_ejecutar [; print "A mis infatigables alfa testers: Jarel, Comely y Mastodon.^"; print "A mis infatigables beta testers: Fernando Gregoire y Johan Paz (alias Mel Hython).^^"; print "A toda la comunidad IF española: el foro del CAAD y tantísimos sitios web con ejemplos y documentos invaluables.^"; print "A Alessandro Schillaci y Luis Fernández, creadores de JIF (en español), un pedazo de herramienta para el desarrollo en InformATE!^"; print "A Baltasar, el Arquero, creador de txtMap, un pedazo de herramienta para el desarrollo de aventuras.^"; print "A Baltasar, el Arquero, por código concedido.^"; print "A Mastodon, por código concedido.^^"; print "A todos los que están comprometidos con su sociedad, la ciudad y el mundo..."; ]; ZIPI_Otro ZIPI_Otro3 with ZIPI_titulo "Sanitaria", ZIPI_ejecutar [; print "Prueba a orinar fuera de la plaza o la lavandería... o en la gente..."; ]; ZIPI_Otro ZIPI_Otro4 with ZIPI_titulo "Decorum, Mores", ZIPI_ejecutar [; print "El respeto al individuo es necesario para la buena convivencia: intenta golpear, oler, gustar, limpiar o besar a alguien. "; ]; ZIPI_Otro ZIPI_Otro5 with ZIPI_titulo "Mercatores", ZIPI_ejecutar [; print "En el mercado, intenta coger algo que no hayas comprado... o cortarlo, si tienes la daga o el cuchillo."; ]; ZIPI_Otro ZIPI_Otro6 with ZIPI_titulo "Religio", ZIPI_ejecutar [; print "Siempre se debe observar el debido respeto en un lugar de culto. En el templo, intenta propasarte con la Sacerdotisa u orinarte en las columnas y verás..."; ]; ZIPI_Otro ZIPI_Otro7 with ZIPI_titulo "Mens sana in corpore sano", ZIPI_ejecutar [; print "¿Cómo es el protagonista? Prueba a rezar, tocarte, olerte, cortarte, golpearte o quemarte con algo."; ]; ZIPI_Otro ZIPI_Otro8 with ZIPI_titulo "Dura lex sed lex", ZIPI_ejecutar [; print "Prueba a ensañarte con el cadáver de Deimos: orínalo, regístralo... bésalo, háblale..."; ]; ZIPI_Otro ZIPI_Otro9 with ZIPI_titulo "Stupor mundi", ZIPI_ejecutar [; print "Nadie en su sano juicio dañaría los frescos en la sala dentro de la Tumba de los Escipiones. Prueba quemarlos o golpearlos con el bastón..."; ]; ZIPI_Otro ZIPI_Otro10 with ZIPI_titulo "Vivere militare est", ZIPI_ejecutar [; print "El ejército romano estaba muy bien entrenado. Prueba a atacar al Legionario o a su Relevo y verás..."; ]; ZIPI_Otro ZIPI_Otro11 with ZIPI_titulo "Et tu, Brute?", ZIPI_ejecutar [; print "La traición puede ser algo arriesgado. Una vez que tengas el correo, en vez de entregarlo al Mensajero, entra en cambio al Edificio de Correos del Foro, o prueba a entregárselo a otras personas: la Lavandera, el Guardia, el Buhonero, el Relevo del legionario o el Legionario, antes o después de relevarlo..."; ]; ZIPI_Otro ZIPI_Otro12 with ZIPI_titulo "De profundis tenebrae...", ZIPI_ejecutar [; print "En este relato hay varias referencias a los mitos de Cthulhu. Búsquelas, si se atreve..."; ]; ZIPI_Otro ZIPI_Otro13 with ZIPI_titulo "Historia de Modus Vivendi", ZIPI_ejecutar [; style bold; print "Sobre la Creación de la Obra^^"; style roman; print "Planseldon, activo miembro de nuestra comunidad, organizó en el 2009 una exitosa comp sobre Orcos, la OrcosComp... pero como el tema no era de mi interés, no participé entonces.^"; print "Contento con la experiencia, para el 2010 planseldon convocó a otra competencia, la CiviliComp, ~dedicada a los relatos interactivos de género histórico~ para ~relatos ambientados en el período histórico comprendido entre la revolución neolítica y el año 2000 de nuestra era~. Como el relato histórico es muy de mi gusto, y teniendo deseos de contar una historia ambientada en la Roma clásica, me decidí a participar.^"; print "Por desgracia, la competencia se suspendió por falta de quorum; no obstante, para entonces este trabajo ya estaba prácticamente listo, por lo que decidí publicarlo ~fuera de competencia~.^"; print "Este es el resultado.^^"; style bold; print "Sobre el Tema de la Obra^^"; style roman; print "De acuerdo a la Wikipedia, ~el civismo (del latín civis, ciudadano y ciudad) se refiere a las pautas mínimas de comportamiento social que nos permiten convivir en colectividad. Se basa en el respeto hacia el prójimo, el entorno natural y los objetos públicos; buena educación, urbanidad y cortesía.~^"; print "La definición, no siendo mala, implica un comportamiento y sobre todo un nivel de involucramiento que no parece demasiado compatible con el interés individual... pero si atendemos a las consecuencias de los actos de otros en nosotros y viceversa, es por cierto de todo nuestro interés comportarnos ~civilizadamente~ y que los demás sean, por cierto, lo más ~civilizados~ posible, con ~el prójimo, el entorno natural y los objetos públicos.~^"; print "Dicho esto, y atendiendo a los dilemas del protagonista del presente relato y su eventual resolución, es posible que el lector haya terminado ~exitosamente~ este relato sintiendo, sin embargo, una cierta sensación de insatisfacción o intranquilidad.^"; print "Sepa el lector que, si tal es el caso, me satisface (¡oh deliciosa ironía!) de que el final lo deje con sentimientos encontrados o de insatisfacción o de logros (aparentemente) no cumplidos o tareas supuestamente mejor abordables.^"; print "Aquella es exactamente la sensación de todos nosotros, los ciudadanos ~de a pie~, en la época del relato y en TODAS las épocas, incluida la nuestra, tal cual entendemos el concepto de ~civismo~ y ~política~; participar o no activamente y/o en qué medida de la vida y hechos de la polis o sociedad: de la ciudad, de la nación y (en nuestros tiempos) de todo el mundo.^"; print "Seguramente a Marco Tulio Cícero le habría agradado saber que, 2.000 años más tarde, aún estaría viva esta necesidad e inquietud individual de encontrar más y mejores formas de coexistencia comunitaria, con sistemas legales o no de por medio... y sufriría, también, de saber lo poco que hemos realmente avanzado tras tanto tiempo: crimen (organizado y del otro), guerras y conflictos limítrofes varios, hambrunas, pestes, problemas ecológicos y tanta calamidad que sufrimos y sufriremos, todo ello por no querer involucrarnos ~lo suficiente~ con ~la ciudad y el mundo~.^^"; print "El protagonista de este relato sufre, siente y vive según ello, como asimismo le ha de ocurrir al jugador y a quien esto escribe también, sin duda: es verdaderamente nuestro Modus Vivendi presente... y será esta sensación de insatisfacción (o su ausencia) el principal desafío y motor que definirá nuestra forma de vida cívica (en el sentido más alto de civismo) en estos tiempos... y en los tiempos por venir, no lo dudo.^"; print "Por cierto, en este relato no hay nada que impida (incluso en el final ~exitoso~) que aparezca esta sensación de insatisfacción... y eso también es parte de la moraleja de todo esto: la vida adulta y comprometida e involucrada con la sociedad, la ciudad y el mundo trae inevitablemente compromisos y soluciones imperfectas que nos causan insatisfacción y es deber de un adulto el soportar esta situación y buscar un equilibrio lo más satisfactorio o lo menos insatisfactorio posible.^"; print "Digo pues que NO ES POSIBLE vivir responsablemente y pensar, esperar o exigir que NUNCA vamos a pasar por momentos de insatisfacción o incomodidad: es ingenuo y hasta evasivo (o sea, no es adulto) el esperar eso de la vida... máxime si vivimos comprometidos e involucrados ~con la sociedad, la ciudad y el mundo~.^"; print "Me juego absolutamente por este mensaje y su sentimiento, su pathos y su gestalt, como su principal y verdadero aporte, incluso más allá de este relato en sí.^^"; print "Por último, quiero aclarar que el problema de la pederastia estaba presente en el argumento mucho antes de que salieran a la luz pública en 2010 los hechos por todos conocidos que involucraron a autoridades eclesiásticas del catolicismo romano.^"; print "En cuanto al juego de la pelota, fue incluido como un elemento cultural históricamente documentado respecto de las entretenciones infantiles de la época y decididamente NO como homenaje al Mundial de Fútbol de la FIFA (que apenas seguí de lejos).^^"; print "Que ambas situaciones tengan su paralelo en la realidad es, sencillamente, una coincidencia.^"; print "La situación del protagonista, la intención de este autor y los sentimientos del jugador, por otra parte...^^"; style bold; print "Santiago de Chile, 01 de Octubre, 2010"; style roman; ]; Attribute legible; ! Definiciones para lectura Array matriz_plaza ->10; ! Definiciones para ambientador universal Array matriz_foro ->10; Array matriz_mercado ->10; ! CLASES GENERICAS !Meta Clase para Localidades Class Habitacion with descripcion [; if ( (accion==##Mirar) || (self hasnt visitado) ) self.descripcion_larga(); else self.descripcion_corta(); ! rtrue; ], descripcion_larga "descripción larga de la habitación", descripcion_corta "descripción corta de la habitación", antes [; !num Comer: if (uno==0) "Pero... si aquí no hay nada para comer..."; Beber: if (uno==0) "Pero... si aquí no hay nada para beber..."; Soplar, Gesticular : "Me pongo a hacer morisquetas y meneo los brazos y piernas. Hay que estar en forma: un ciudadano romano cuida su cuerpo para mejor servir a la nación y todo eso..."; Dormir : "Qué más quisiera, pero, bueno, carpe diem..."; Despertarse : "Más despierto, imposible."; Tacos : "Un ciudadano romano correcto no se expresa de esa manera."; Responder: print "Para hablar con los personajes, usa:^"; style fixed; print "HABLA CON "; style roman; rtrue; Escuchar: if (uno==0) "El ajetreo de siempre. Roma nunca descansa..."; BuscarEn, Tocar: if (uno == obj_arriba) "No alcanzo..."; else if (uno == obj_abajo) { if (otro==0) <>; else <>; } Examinar: if (uno == obj_arriba){ if ( (localizacion == Triclinio) || (localizacion == Lavanderia) ) "El techo está limpio y blanco. La lavandera, que está en todo..."; else if (localizacion == Templo) "El techo del templo está tan limpio y reluciente como sus paredes."; else if (localizacion == Frescos) "El techo de la sala es tan liso como el suelo."; else if (localizacion == Hipogeo) "No lo distingo. Está demasiado alto..."; else if (Carro in Mercado) "El cielo de Roma se ve límpido y sin nubes."; else if (Relevo in Hipogeo) "El cielo de Roma se ve límpido y sin nubes, pero ya empieza a atardecer."; else "El cielo de Roma se ve límpido y sin nubes, pero ya está muy oscuro."; } else if (uno == obj_abajo) <>; ], has luz; ! Clase para PSI Class PSI class Object with nombre_m 'cuerpo' 'mano' 'pie' 'brazo' 'dedo' 'musculo' 'pelo' 'pecho' 'torso' 'puño' 'puno', nombre_mp 'manos' 'pies' 'brazos' 'dedos' 'musculos' 'pelos' 'puños' 'punos', nombre_f 'pierna' 'cintura' 'cara' 'piel' 'uña' 'espalda', nombre_fp 'piernas' 'uñas' 'espaldas', descripcion [; if (self hasnt general) { give self general; self.descripcion_larga(); } else { give self ~general; self.descripcion_corta(); } rtrue; ], descripcion_larga "descripción larga del PSI", descripcion_corta "descripción corta del PSI", antes [; Frotar: "Mejor que no: en Roma, cada cual se hace cargo de su propio aseo..."; Coger, Tocar, Empujar: <>; Probar, Oler: "Mejor que no: en Roma, el decoro conserva la convivencia... y los dientes."; BuscarEn: <>; Comprar: if (Jugador notin Mercado) { print "No es sitio este para transacciones, mucho menos con "; print (el) uno; "...."; } else { if (Dinero in Jugador) <>; else { print "No tengo dinero; nada puedo comprarle "; print (al) uno; "...."; } } ], vida [; Besar: "No me siento particularmente inclinado a esto con alguien así y en semejante lugar, la verdad..."; Mostrar: if ( ( (Jugador in Mercado) || (Jugador in Templo) ) && (otro hasnt visitado) ) { print "Mejor hablo primero con "; print (el) otro; print ". "; } if (Jugador notin Mercado) <>; else <>; Responder: print "Para hablar con los personajes, usa:^"; style fixed; print "HABLA CON "; style roman; rtrue; Atacar: "Mejor que no: en Roma, la violencia suele ser letal."; ], has animado; ! Clase para Objetos que son parte del jugador Class Objeto_Jugador class Object ; ! Clase para Objetos que el jugador puede coger y manipular ! y que son parte de algún puzzle Class Objeto_Puzzle class Object with descripcion [; if (self hasnt general) { give self general; if (self.descripcion_larga ofclass string) self.descripcion_larga(); else indirect(self.descripcion_larga); } else { give self ~general; if (self.descripcion_corta ofclass string) self.descripcion_corta(); else indirect(self.descripcion_corta); } rtrue; ], descripcion_larga "descripción larga del objeto", descripcion_corta "descripción corta del objeto", antes [; Vender: if ( (localizacion==Mercado) && (otro~=0) ) <>; BuscarEn: <>; Oler: "No parece que huela a nada especial."; Escuchar: "No produce ningún sonido."; Quemar : "Mejor que no: en una ciudad como Roma, los incendios siempre terminan en tragedia."; ], has ~general; ! Clase para Objetos del escenario manipulables por el jugador y que ! son parte de algún puzzle Class Objeto_Escenario class Object with descripcion [; if (self hasnt general) { give self general; self.descripcion_larga(); } else { give self ~general; self.descripcion_corta(); } rtrue; ], descripcion_larga "descripción larga del objeto", descripcion_corta "descripción corta del objeto", antes [; BuscarEn: <>; Examinar: rfalse; Frotar : "No voy a estar limpiándolo todo, tengo otras cosas que hacer."; Quemar : "Mejor que no: en una ciudad como Roma, los incendios siempre terminan en tragedia."; Coger, Empujar : "No voy a empezar a desordenarlo todo..."; Oler: "No parece que huela a nada especial."; Escuchar: "No produce ningún sonido."; ], has escenario; !Clase para las escalas Class Objeto_Escala class Objeto_Escenario with nombre_f 'escalera' 'escala', nombre_fp 'escaleras' 'escalas', nombre_m 'escalon' 'peldano', nombre_mp 'escalones' 'peldanos', antes [; Bajar : <>; Meterse, Trepar : <>; ], has femenino entrable soporte; ! Clase para Objetos de Localidad Class Objeto_Localidad class Objeto_Escenario with antes [; Escuchar: <>; Empujar, Coger : "No creo poder con Roma, ni siquiera Atlas es tan forzudo..."; ]; ! Objeto para que reaccione a <>> Objeto_Localidad Objeto_Localidad_Generico "lugar" with nombre 'cuarto' 'lugar' 'habitacion', descripcion [; np = 2; switch (SiguientePalabra()) { 'cuarto' : <>; 'lugar' : <>; 'habitacion' : <>; default : "No veo eso que dices."; }; ], antes [; Salirse: <>; ], esta_en [; return true; ], has masculino; ! La luz Objeto_Escenario Objeto_Luz "luz" with nombre_m 'atardecer', nombre_f 'luz' 'semi' 'penumbra' 'sombra' 'oscuridad', nombre_fp 'penumbras' 'sombras', descripcion [; if (localizacion == Callejon) "No hay mucha luz: hay que andar con cuidado para no tropezar."; else if (localizacion == Templo) "En el templo la luz parece más clara y más limpia que afuera y las sombras hacen que la luz resalte vivamente, sin devorarla u opacarla."; else if (localizacion == Frescos) { ! Tenemos la Antorcha encendida if ( (Antorcha in Jugador) && (Antorcha has luz) ) "La luz de la antorcha es suficiente como para ver los detalles de los frescos."; else "La luz del atardecer no es suficiente como para ver los detalles de los frescos."; } else if (localizacion == Hipogeo) "La luz de las antorchas es escasa para tanta inmensidad y apenas se ve algo en las sombras."; else if (Carro in Mercado) "La limpia luz del cielo de Roma da una tonalidad clara y pura a todas las cosas."; else if (Relevo in Hipogeo) "Las sombras del atardecer empiezan a alargarse."; else "Ya está muy oscuro y apenas se ve algo entre las sombras."; ], antes [; Empujar, Coger, Tocar, Frotar : "Si supiera cómo, le pasaría el dato al consul romano: las calles serían más seguras..."; ], esta_en [; return true; ], has femenino; ! Meta clase DecoradoAmpliado Class Decorado_Ampliado class Decorado with antes [; Quemar: "Mejor que no: en una ciudad como Roma, los incendios siempre terminan en tragedia."; Examinar: rfalse; Coger: "Mejor no sobrecargarme..."; Empujar: "No parece que se pueda empujar..."; Oler: "No parece que huela a nada especial..."; Escuchar: "No produce ningún sonido..."; BuscarEn: <>; default: "¿¡Y para qué diablos voy a hacer eso, eh?!..."; ]; ! Decorado Visible en Exteriores. Decorado_Ampliado Decorado_Roma with describir 'colina' "Para examinar una colina, usa el nombre propio. Por ejemplo: EXAMINAR ESQUILINO." G_FEMENINO 'monte' "Para examinar un monte, usa el nombre propio. Por ejemplo: EXAMINAR ESQUILINO" G_MASCULINO 'aventino' "Nuestro monte Aventino es un área popular, donde la gente se gana el pan con esfuerzo y sudor, trabajando honestamente de sol a sol. No estamos en el corazón de Roma, pero deberíamos serlo." G_MASCULINO 'capitolino' "El monte Capitolino, donde están los templos mayores de Roma. Un sitio no siempre muy sacro, me temo..." G_MASCULINO 'celio' "El monte Celio, al igual que el Esquilino, es donde los ricos y poderosos tienen sus villas, mansiones y palacetes." G_MASCULINO 'esquilino' "El monte Esquilino, al igual que el Celio, es donde los ricos y poderosos tienen sus villas, mansiones y palacetes." G_MASCULINO 'palatino' "El Monte Palatino es donde se originó Roma y donde reciden algunos de nuestros senadores y la morada de nuesto Cónsul." G_MASCULINO 'quirinal' "El Monte Quirinal, donde los sabinos supieron adorar a Quirino, el dios que dió nombre al lugar. Sus brisas son frescas y se respira paz en sus faldeos." G_MASCULINO 'viminal' "El monte Viminal, la más pequeña de todas las colinas." G_MASCULINO, antes [; Escuchar: <>; Empujar, Tirar, Coger, Frotar : "No me dedico a mudanzas o urbanismo, caramba. Bastante tengo ya con ser romano..."; ], esta_en [; if ( (localizacion == Terraza) || (localizacion == Plaza) || (localizacion == Foro) || (localizacion == Mercado) || (localizacion == ViaAppia) ) return true; ], ; ! Decorado Visible en Exteriores fuera del Barrio Decorado_Ampliado Decorado_Roma_No_Barrio with describir 'horizonte' "El horizonte está dominado por las siete colinas o montes de Roma: Aventino, Capitolino, Celio, Esquilino, Palatino, Quirinal, Viminal." G_MASCULINO 'colinas' "Las siete colinas de Roma: Aventino, Capitolino, Celio, Esquilino, Palatino, Quirinal, Viminal." G_FEMENINO + G_PLURAL 'montes' "Los siete montes de Roma: Aventino, Capitolino, Celio, Esquilino, Palatino, Quirinal, Viminal." G_MASCULINO + G_PLURAL, antes [; Escuchar: <>; Empujar, Tirar, Coger, Frotar : "No me dedico a mudanzas o urbanismo, caramba. Bastante tengo ya con ser romano..."; ], esta_en [; if ( (localizacion == Foro) || (localizacion == Mercado) || (localizacion == ViaAppia) ) return true; ], ; Objeto_Escenario Objeto_Piso "piso" with nombre 'piso' 'suelo', descripcion [; if (localizacion==Plaza) "Son cantos de río, cortados con maestría y puestos con cuidado. Están apisonados a firme y no se ven hendiduras o grietas. No se ve ninguno suelto y están un poco húmedos, gracias a la fuente. Hay que andar ojo con las patinadas, pero los vecinos y un servidor ya estamos acostumbrados."; else if ( (localizacion == ViaAppia) || (localizacion == ArcoDruso) || (localizacion == Tumba) ) <>; else if ( (localizacion == Frescos) || (localizacion == Hipogeo) ) "El suelo está duro como la roca, pero parece más bien ser suelo común fuertemente apisonado."; else <>; ], antes [; Coger: "Ni siquiera un gladiador podría hacerlo..."; Quemar: "Es tentador, pero la verdad me gusta Roma como está..."; Tocar: if (otro==Baston) "Al golpear el suelo con el bastón, saltan unas chispas de la punta de pedernal."; else <>; BuscarEn: if ( (localizacion == Terraza) || (localizacion == Triclinio) || (localizacion == Lavanderia) ) "El suelo está impecable, fruto de los esfuerzos de la lavandera."; else if (localizacion == Plaza) <>; else if (localizacion == Templo) "El suelo de mármol está suave y sin mancha alguna."; else if ( (localizacion == Frescos) || (localizacion == Hipogeo) ) "El suelo está duro como la roca, muy suave y está liso."; else "No es más que el suelo de Roma, hollado por miles de personas, año tras año..."; Frotar: if ( (localizacion == Terraza) || (localizacion == Triclinio) || (localizacion == Lavanderia) ) "No hace falta: la lavandera mantiene todo impecable..."; else if (localizacion == Templo) "No hace falta: todo el mármol del templo está impecable..."; else "Paso. Aunque no vendría mal un poco de aseo, si me pongo a limpiar Roma sería una tarea de nunca acabar."; ], esta_en [; return true; ], has masculino; Objeto_Escenario Objeto_Techo "techo" with nombre 'techo' 'cielo', descripcion [;<>;], antes [; Coger: <>; Quemar: <>; Tocar: <>; BuscarEn: <>; Frotar: if ( (localizacion == Triclinio) || (localizacion == Lavanderia) ) "No hace falta: la lavandera mantiene todo impecable..."; else if (localizacion == Templo) "No hace falta: está impecable..."; else if ( (localizacion == Frescos) || (localizacion == Hipogeo) ) "No alcanzo. Está demasiado alto..."; else "Afortunadamente, el cielo de Roma ya está limpio..."; ], esta_en [; return true; ], has masculino; Objeto_Escenario Objeto_Pared "pared" with nombre_f 'pared', nombre_fp 'paredes', nombre_m 'muro', nombre_mp 'muros', descripcion [; if ( (localizacion == Terraza) || (localizacion == Triclinio) || (localizacion == Lavanderia) ) "Las paredes están como la fundación original de la casa: sin pintar, en bruto y podrían estar más limpias... a decir de la lavandera, claro."; else if (localizacion == Callejon) "Las paredes están sucias, aunque sin escoraciones y buen estado."; else if (localizacion == Tumba) <>; else if (localizacion == Frescos) <>; else if (localizacion == Hipogeo) <>; else if (localizacion == ArcoDruso) <>; else ! El Templo "Las paredes de mármol están impecables y la luz se refleja en ellas suavemente."; ], antes [; Coger: "Ni siquiera un gladiador podría hacerlo..."; Quemar: if ( (Localizacion == Frescos) || (localizacion == Tumba) ) { if (otro==0) { if (Antorcha in Jugador) <>; else "¿Con qué?..."; } else if (otro==Antorcha) { if (Antorcha has luz) "No me atrevo a dañar los frescos. Sería criminal arruinar semejante trabajo..."; else "La antorcha está apagada... por suerte. Sería criminal arruinar semejante trabajo..."; } else { print (El) otro; " no sirve para quemar nada..."; } } else "Es tentador, pero la verdad me gusta Roma como está..."; Tocar: if (otro == Baston) { if (Localizacion == Tumba) <>; else if (Localizacion == Frescos) "No me atrevo a dañar los frescos."; else "Al golpear la pared con el bastón, saltan unas chispas de la punta de pedernal."; } else if (localizacion == Callejon) "Las paredes son rugosas y ásperas."; else "Las paredes son suaves y lisas."; BuscarEn: <>; Frotar: if ( (localizacion == Terraza) || (localizacion == Triclinio) || (localizacion == Lavanderia) ) "No hace falta: la lavandera mantiene todo impecable..."; else if ( (localizacion == Callejon) || (localizacion == Tumba) || (localizacion == Hipogeo) || (localizacion == ArcoDruso) ) "Paso. Aunque no vendría mal un poco de aseo, si me pongo a limpiar Roma sería una tarea de nunca acabar."; else ! El Templo y Frescos "No hace falta: están impolutas."; ], esta_en [; if ( (localizacion == Terraza) || (localizacion == Triclinio) || (localizacion == Lavanderia) || (localizacion == Callejon) || (localizacion == Templo) || (localizacion == Tumba) || (localizacion == Frescos) || (localizacion == Hipogeo) || (localizacion == ArcoDruso) ) return true; ], has femenino; ! Habitación Limbo Habitacion Limbo "El Limbo" with descripcion "¡Eh! ¿Cómo has llegado aquí? Estos Betatesters...", has luz; ! Objetos del Jugador ! El Jugador Objeto_Jugador miJugador with descripcion "Soy un tipo normal, recién entrado a la vida adulta a decir de mis padres. Tengo buen estado físico: entreno en el Campo de Marte cada tres días o así. Voy vestido ligero y vivo igual... lo cual mis padres seguramente no aprobarían.", antes [; Orinar: <>; Quemar: <>; Frotar: if (otro==0) { if (Localizacion == Lavanderia) <>; else if (Localizacion == Plaza) <>; else "¿Dónde?... Un romano no se baña en cualquier parte..."; } else if ( (otro==Tina) || (otro==Drenaje) ) { print "¿¿En "; print (el) otro; "?? ¿¡Ahi?!... No, qué asco..."; } else if (otro==Fuente) "Me lavo con cuidado las manos y la cara con el agua de la fuente. Muy refrescante..."; else "Ahí no puedo bañarme..."; Rezar: "La verdad, me he vuelto un poco escéptico, desde que salí de casa..."; Tocar : if (otro==0) "Tengo la piel bronceada, fruto de mis quehaceres al aire libre romano."; else <>; Oler : "La verdad, aseo casual o no, no me vendría mal un baño. Si puedo, al final del día iré a los baños públicos, que no tienen desperdicio"; Cortar : "Ya hay bastantes cosas peligrosas en Roma, como para hacerme daño porque sí."; Escuchar : "Mi corazón late bien, mi respiración está tranquila."; Frotar : "Frotándome con energía, gano un poco de calor."; Atacar : if ( (otro==Antorcha) && (Antorcha has luz) ) <>; else { print "Bastante tengo con mis afanes diarios para más encima empezar a golpearme con "; print (el) otro; "."; } ] ; ! La ropa del Jugador Objeto_Jugador Ropa "ropa puesta" miJugador with nombre_f 'ropa' 'vestimenta' 'vestido', adjetivos 'puesta', listarse "mi ropa puesta", descripcion "Es una camisa larga, ceñida por una tira de cuero y un par de sandalias. Aunque como adulto debiera usar la toga, para mi trabajo no haría más que estorbarme...", antes [; Abrir, Cerrar, Recibir: "No tengo bolsillos como para guardar nada aquí..."; BuscarEn: <>; Quemar: if (otro==0) { if ( (Localizacion==Tumba) || (Antorcha in Jugador) ) <>; else print "Afortunadamente no tengo con qué quemarla:"; } else { if (otro==Antorcha) { if (Antorcha hasnt luz) print "Afortunadamente, la antorcha está apagada:"; else print "Sería imbécil de cuidado si lo hiciera: "; } else { print "Afortunadamente "; print (el) otro; print " no sirve para quemar nada:"; } } " no tengo tanto frío y mi ropa es mala fuente de luz..."; Desvestir : "¿Y andar desnudo? Si me pillaran luego los lictores... no gracias."; ], has femenino prenda puesto transparente recipiente; Objeto_Jugador Camisa "camisa" Ropa with nombre 'camisa', adjetivos 'larga', descripcion "Es una camisa larga, ceñida por una tira de cuero.", antes [; BuscarEn: <>; Quemar: <>; Desvestir : "¿Y andar desnudo? Si me pillaran luego los lictores... no gracias."; ], has femenino prenda puesto; Objeto_Jugador TiraCuero "tira de cuero" Ropa with nombre 'tira', adjetivos 'cuero', descripcion "Es una tira de cuero, para ceñir la camisa.", antes [; BuscarEn: <>; Quemar: <>; Desvestir : "No lo haré: si me saco la tira de cuero, la camisa se va a ver suelta, como un saco. Puedo andar vestido sencillamente, pero como palurdo, jamás."; ], has femenino prenda puesto; Objeto_Jugador Sandalias "sandalias de cuero" Ropa with nombre_f 'sandalia', nombre_fp 'sandalias', adjetivos 'cuero' 'comoda' 'comodas', descripcion "Son unas sandalias de cuero, muy cómodas, aunque sólo yo sé dónde me aprietan, je...", antes [; BuscarEn: <>; Quemar: <>; Desvestir : "De ninguna manera: si me saco las sandalias, tendría que andar descalzo y Roma no es un prado florido, precisamente."; ], has femenino nombreplural prenda puesto; ! ================= Localidades =============== ! La Lavanderia ! La Terraza Habitacion Terraza "La Terraza" with descripcion_corta "Desde la terraza puedo ver Roma a la distancia y la plaza de mi barrio aquí abajo. Mi esterilla está tendida en el suelo y detrás mío, al oeste, se entra al triclinio.", descripcion_larga "Desde la terraza la vista es magnífica.^ Roma se extiende en torno mío y a la distancia, una ciudad que domina el paisaje hasta el horizonte. En contraste, la plaza de mi barrio aquí abajo parece poca cosa, pero su ajetreo sin pausa a veces eclipsa la urbe.^ De hecho, la mejor hora para apreciar la ciudad es al atardecer, cuando el trabajo del día cesa por fin y Roma descansa... o eso parece: a mí me consta que Roma no duerme nunca.^ Para el atardecer, en todo caso, falta bastante, y mientras tanto hay cosas que hacer...^ Mi esterilla está tendida en el suelo y detrás mío, al oeste, se entra al triclinio.", antes [; Salidas: "Detrás mío, al oeste, se entra al triclinio."; ], ! Ciclo automático para devolver la pelota a los niños cada_turno [; ArrancarDaemon(self); ], cantidad 5, daemon [; ! El ciclo se detiene si no estamos en la Terraza o no tenemos la Pelota if ( (localizacion~=Terraza) || (Pelota notin Jugador) ){ self.cantidad=5; PararDaemon(self); rtrue; } if (self.cantidad > 0) self.cantidad--; switch(self.cantidad) { 3: "^Los niños miran hacia la terraza y cuchichean entre ellos."; 2: "^Algunos niños me gritan con enojo."; 1: "^Uno de los niños me hace un gesto muy, muy mal educado..."; 0: print "^Harto de la tensión, decido reanudar el juego. "; <>; }; ], al_o Triclinio, afuera Triclinio, abajo [;<>;], adentro Triclinio ; ! PSI PSI NinosTerraza "niños" Limbo with nombre_mp 'ninos' 'muchachos' 'pequenos', nombre_m 'nino' 'muchacho' 'pequeno', descripcion_corta [; print "Son los hijos de los vecinos, que entretienen sus ocios con un poco de deporte."; if (Pelota notin Plaza) " Algunos me miran con caras de pocos amigos."; else rtrue; ], descripcion_larga [; print "Son los hijos de los vecinos: muchos pequeños y algunos muchachos que acaso me llegan a la cintura. Se los ve felices, corriendo de aquí para allá, entreteniendo sus ocios con un poco de deporte."; if (Pelota notin Plaza) print " Algunos me miran con caras de pocos amigos: querrán su pelota, supongo..."; else "^Viéndoles divertirse juntos, sucios de sudor y polvo, la verdad es que mi infancia en casa me parece más bien triste y aburrida."; ], antes [; Probar, Oler, Coger, Tocar, Empujar, Orinar: "Tendría que ir a la plaza para eso..."; Jugar : if (Pelota in Jugador) { move Pelota to Plaza; give Pelota escenario; ! No podemos coger la pelota "Haciendo primero algunas señas, les lanzo la pelota y los niños la reciben entre risas."; } else "Tendría que ir a la Plaza primero..."; ], vida [; Besar, Atacar: "Tendría que ir a la plaza para eso..."; Hablar : if (Pelota in Jugador) "Los niños no me hacen caso y me hacen gestos para que les lance la pelota."; else "Los niños no me hacen caso y se ríen mientras juegan."; ], has masculino nombreplural escenario; PSI GuardiaTerraza "guardia" Terraza with nombre 'lucio' 'guardia' 'guarda' 'vigilante', descripcion [; if (Guardia in Plaza) "El guardia ha sido contratado recientemente por los vecinos, para cuidar el barrio. No es muy fornido, pero lo he visto un par de veces en el Campo de Marte y sabe moverse."; else ! Guardia en el Callejón con Pederasta está muerto "El guardia está junto al cadáver de Deimos, esperando..."; ], antes [; Probar, Oler, Coger, Tocar, Empujar, Orinar, BuscarEn, Frotar: if (Guardia in Plaza) "Tendría que ir a la plaza para eso..."; else "Tendría que ir al callejón para eso..."; ], vida [; Besar, Atacar: if (Guardia in Plaza) "Tendría que ir a la plaza para eso..."; else "Tendría que ir al callejón para eso..."; Hablar : "Me responde con un gruñido y me hace un gesto brusco. No quiere que lo distraiga..."; ], has masculino escenario; PSI PederastaTerraza "Deimos" Limbo with nombre 'alguien' 'deimos' 'tipo' 'hombre' 'cadaver' 'pederasta', adjetivos 'flaco' 'muy' 'flaquisimo' 'mal' 'encarado' 'escondido', descripcion [; ! No hemos examinado al Pederasta if (Pederasta hasnt visitado) "No se distingue bien quién es."; ! El Pederasta está vivo else if (Pederasta hasnt encendido) "Es Deimos, aunque apenas se ve nada."; else { ! El Pederasta está muerto print "Es el cadáver de Deimos, tendido en el suelo del callejón, con la cabeza rota"; if (Guardia in Callejon) ". El guardia monta guardia a su lado."; else "."; } ], antes [; Besar, Hablar, Orinar, Probar, Oler, BuscarEn, Frotar: "Tendría que ir al callejón para eso..."; Tocar: ! El Pederasta está vivo if (Pederasta hasnt encendido) { if (otro~=Pelota) <>; else <>; } else <>; ], vida [; Besar, Hablar: "Tendría que ir al callejón para eso..."; Atacar: ! El Pederasta está vivo if (Pederasta hasnt encendido) ! No hemos examinado al Pederasta if (Pederasta hasnt visitado) "Mejor saber quién es primero..."; ! Ya hemos examinado al Pederasta ! Matamos al Pederasta con la Pelota else if (otro==Pelota) { give Pederasta encendido; ! El Pederasta está muerto give Pelota encendido; ! La pelota fue usada para matar al Pederasta move Pelota to Callejon; move Daga to Callejon; ! puntuacion++; Conseguido(1); MataPelotaTerraza.proyeccion(1); <>; ! Matamos al Pederasta con la ayuda del Guardia } else { ! Atacamos al Pederasta sin ayuda ni armas "Tendría que ir al callejón para eso..."; } else "No hace falta, ya está muerto..."; ], has masculino escenario; ! Decorados Objeto_Localidad Objeto_Localidad_Terraza "terraza" with nombre_f 'terraza', descripcion [; if (localizacion == Terraza) <>; else if (localizacion == Triclinio) "La terraza se asoma al barrio. Si salgo podría ver la plaza a sus pies y Roma a la distancia."; else ! En la Plaza "La terraza se asoma al barrio por encima de la lavandería... y dan ganas de volver a descansar allá arriba, vaya."; ], antes [; Bajar, SaltarSobre: if (Localizacion == Terraza) "Está demasiado alto. Mejor salgo de la terraza y bajo a pie..."; else if (localizacion == Triclinio) "Tendría qe salir a la terraza, primero"; else ! En la Plaza "Está demasiado alto. Para ir a la terraza es menester entrar a la lavendería y luego subir al triclinio..."; Salirse: if (Localizacion == Terraza) <>; else "No estoy en la terraza..."; Meterse, Entrar: if (Localizacion == Triclinio) <>; else if (Localizacion == Terraza) "Ya estoy en la terraza."; else ! En la Plaza <>; ], esta_en [; if ( (Localizacion == Terraza) || (Localizacion == Triclinio) || (Localizacion == Plaza) ) return true; ], has femenino escenario entrable abierto; Objeto_Escenario Esterilla "esterilla" Terraza with nombre 'esterilla', adjetivos 'tendida', descripcion_corta "Mi esterilla para dormir. Tiene bastante uso pero es cómoda.", descripcion_larga "Mi esterilla para dormir. No es muy gruesa ni muy blanda, pero es más cómoda que el suelo. Cuando hace frío o llueve, me la llevo al triclinio y acaso le pido una manta a la lavandera.^ Tiene bastante uso pero está en buen estado.", has femenino entrable soporte; Objeto_Escenario Roma "Roma" with nombre_f 'roma' 'vista' 'ciudad' 'urbe', nombre_m 'paisaje', descripcion_corta "La ciudad y sus colinas se extienden magníficamente hasta donde la vista alcanza.", descripcion_larga [; if ( (localizacion == Terraza) || (localizacion == Plaza) ) "Roma se extiende en torno mío y a la distancia, una ciudad que domina el paisaje con multitud de edificios hasta el horizonte, recortado por sus colinas. En contraste, mi barrio parece poca cosa, pero su ajetreo sin pausa a veces eclipsa la urbe.^ De hecho, la mejor hora para apreciar la ciudad es al atardecer, cuando el trabajo del día cesa por fin y Roma descansa... o eso parece: a mí me consta que Roma no duerme nunca."; else "Roma se extiende en torno mío y a la distancia, una ciudad que domina el paisaje hasta el horizonte, recortado por sus colinas. Su ajetreo sin pausa, sin embargo, a veces eclipsa la urbe.^ De hecho, la mejor hora para apreciar la ciudad es al atardecer, cuando el trabajo del día cesa por fin y Roma descansa... o eso parece: a mí me consta que Roma no duerme nunca."; ], antes [; Escuchar: <>; Salirse: if (Localizacion == ArcoDruso) <>; else <>; Meterse, Entrar: if (Localizacion == ViaAppia) <>; else "Ya estoy en medio de Roma..."; ], esta_en [; if ( (localizacion == Terraza) || (localizacion == Plaza) || (localizacion == Foro) || (localizacion == Mercado) || (localizacion == ViaAppia) || (localizacion == ArcoDruso) || (localizacion == Tumba) ) return true; ], has femenino; Decorado_Ampliado Decorado_Terraza Terraza with describir 'edificios' "Todo está esparcido y mezclado casi sin orden o concierto aparente, con el espacio justo para que pasen calles entre ellos. Es una abigarrada mezcla de construcciones de todo el mundo, con nuestro estilo romano predominando levemente por sobre los demás." G_MASCULINO + G_PLURAL 'construcciones' "Todo está esparcido y mezclado casi sin orden o concierto aparente, con el espacio justo para que psaen calles entre ellos. Es una abigarrada mezcla de construcciones de todo el mundo, con nuestro estilo romano predominando levemente por sobre los demás." G_FEMENINO+ G_PLURAL 'construccion' "Todo está esparcido y mezclado casi sin orden o concierto aparente, con el espacio justo para que psaen calles entre ellos. Es una abigarrada mezcla de construcciones de todo el mundo, con nuestro estilo romano predominando levemente por sobre los demás." G_FEMENINO 'estilo' "Es una construcción sencilla y robusta en la bases, con los decorados delicados en los remates superiores... cuando el dinero lo permite, claro." G_MASCULINO, antes [; Empujar, Tirar, Coger, Frotar : "No me dedico a mudanzas o urbanismo, caramba. Bastante tengo ya con ser romano..."; ] ; ! Decorados visibles desde el Barrio Decorado_Ampliado Decorado_Barrio with describir 'horizonte' "El horizonte está dominado por las siete colinas de Roma, y seis pueden verse plenamente desde nuestro Monte Aventino: Capitolino, Celio, Esquilino, Palatino, Quirinal, Viminal." G_MASCULINO 'colinas' "De las siete colinas de Roma, seis pueden verse desde nuestro Monte Aventino: Capitolino, Celio, Esquilino, Palatino, Quirinal, Viminal." G_FEMENINO + G_PLURAL 'montes' "De los siete montes de Roma, seis pueden verse desde nuestro Monte Aventino: Capitolino, Celio, Esquilino, Palatino, Quirinal, Viminal." G_MASCULINO + G_PLURAL, antes [; Empujar, Tirar, Coger, Frotar : "No me dedico a mudanzas o urbanismo, caramba. Bastante tengo ya con ser romano..."; ], esta_en [; if ( (localizacion == Terraza) || (localizacion == Plaza) ) return true; ], ; ! El Triclinio Habitacion Triclinio "El Triclinio" with descripcion_corta "En el triclinio tomamos las comidas del día, pero aparte de los divanes y la mesa de servir no hay nada más. Escalera abajo está la lavandería y se puede salir a la terraza por el este.", descripcion_larga "En el triclinio tomamos las comidas del día, que en mi caso sólo es la cena: el resto de las comidas las consigo en la ciudad, entre un encargo y otro.^ La lavandera mantiene esta habitación impecable... como el resto de la casa por lo demás. No se atiende a muchos clientes en el triclinio, pero cuando se los recibe la habitación no hace sino confirmar la calidad de los servicios que se prestan escaleras abajo.^ Como no es hora de cenar y el desayuno fue servido hace ya rato, la habitación tiene sólo el mobiliario a la vista: aparte de los divanes y la mesa de servir no hay nada más.^ Escalera abajo está la lavandería y se puede salir a la terraza por el este.", antes [; Oler: if (uno==0) "Pese a que el lugar está impecable, huele levemente a orina... como es normal. La lavandería huele bien sólo cuando el negocio anda mal..."; Comer: if (uno==0) "Normalmente sólo tomo una comida al día en esta casa, y como todavía no es hora de cenar... pues tendré que aguantarme un rato largo, aún."; Salidas: "Escalera abajo está la lavandería y se puede salir a la terraza por el este."; ], al_e Terraza, abajo Lavanderia, afuera Terraza ; ! Decorados Objeto_Localidad Objeto_Localidad_Triclinio "triclinio" with nombre_m 'triclinio' 'triclino', descripcion [; if (localizacion == Triclinio) <>; else if (localizacion == Terraza) "En el triclinio tomamos las comidas del día."; else ! En la Lavandería "Hay que subir por la escalera, primero. El techo no es transparente..."; ], antes [; Salirse: if (Localizacion == Triclinio) <>; else "No estoy en el triclinio..."; Meterse, Entrar: if (Localizacion == Terraza) <>; else if (Localizacion == Lavanderia) <>; else ! En el Triclinio "Ya estoy dentro en el triclinio."; ], esta_en [; if ( (Localizacion == Terraza) || (Localizacion == Lavanderia) || (Localizacion == Triclinio) ) return true; ], has masculino escenario entrable abierto; !Clase para las escalas de la lavandería Class Objeto_Escala_Madera class Objeto_Escala with adjetivos 'madera' 'simple', descripcion "Es una escala de madera simple."; Objeto_Escala_Madera EscaleraTriclino "escalera descendente" Triclinio with adjetivos 'descendiente' 'descendente'; Objeto_Escenario Divanes "divanes" Triclinio with nombre_mp 'divanes' 'bancos', nombre_m 'mueble' 'divan' 'banco', adjetivos 'largos' 'largo' 'estrechos' 'estrecho', descripcion_corta "Ubicados a tres costados de la mesa. Cómodos pero no les vendría mal un cambio de acolchado.", descripcion_larga "Son tres bancos estrechos y largos, ubicados a tres costados de la mesa. Ya sea que uno se recueste o se siente en ellos, resultan bastante cómodos para comer. En mi opinión, no les vendría mal un cambio de acolchado, pero la lavandera se ríe de mi y de las ~decadentes~ costumbres de mi casa, así que el acolchado sigue igual...", despues [; Salirse, Bajar : "Me bajo del divan. Hay que moverse..."; Meterse, Subir : "Me tiendo con gusto.^ Me he acostumbrado y ahora se me hace cómodo..."; ], has masculino nombreplural soporte entrable; Objeto_Escenario Mesa "mesa" Triclinio with nombre_f 'mesa' 'madera', nombre_m 'mueble', adjetivos 'lisa' 'baja' 'limpia', descripcion_corta "Está a la altura de los divanes y al centro de ellos. Tiene bastante uso, pero se mantiene limpia.", descripcion_larga "La mesa del triclinio está hecha de una madera lisa y sin decorados. Es baja y queda así a la altura de los divanes y al centro de ellos. Tiene bastante uso, pero la lavandera la cuida con esmero y se mantiene impecablemente limpia.", has femenino soporte entrable; Decorado_Ampliado Decorado_Triclinio Triclinio with describir 'muebles' "Son apenas una mesa baja y unos divanes." G_MASCULINO + G_PLURAL 'mobiliario' "Son apenas una mesa baja y unos divanes." G_MASCULINO 'acolchado' "El acolchado cubre los divanes para hacerlos más cómodos. En mi opinión, no le vendría mal un cambio de relleno al acolchado, pero la lavandera se ríe de mi y de las ~decadentes~ costumbres de mi casa, así que el acolchado sigue igual..." G_MASCULINO; ! La Lavanderia Habitacion Lavanderia "La Lavandería" with descripcion_corta "La lavandería, con la agitación típica de la mañana. Por la escalera se sube al triclinio y afuera se ve la plaza del barrio.", descripcion_larga "La lavandería es bastante amplia, ocupando toda la planta baja del edificio. A pesar de que las ventanas siempre están despejadas, hay un olor a orines casi permanente, pero esto no es más que uno de los gajes del oficio, al igual que el calor y la agitación constantes: una lavandería en paz y fragante sería, por cierto, sinónimo de vacas flacas.^ Pese a todo, el local se mantiene muy limpio y razonablemente seco, tributo a la pulcritud y los afanes incansables de la dueña de casa.^ Por la escalera se sube al triclinio y afuera se ve la plaza del barrio.", antes [; Orinar: if (uno==0) <>; Oler: if (uno==0) "Todo huele a orines, pero es lo normal. La lavandería huele bien sólo cuando el negocio anda mal..."; Ir: ! Intentamos salir sin antes hablar con la Lavandera if ( ( (localizacion == self) && (uno==obj_e) ) && (Lavandera hasnt visitado) ) { LavanderaIncrepa.proyeccion(1); <>; } Salidas: "Por la escalera se sube al triclinio y afuera se ve la plaza del barrio."; ], al_e Plaza, arriba Triclinio, afuera [;<>;] ; ! Objetos de Puzzle Objeto_Puzzle Tina "tina" Lavanderia with nombre 'tina', adjetivos 'baja', capacidad 0, descripcion_corta "Es una tina baja, excavada en el suelo de la lavandería. Está llena de ropas mezcladas con orina.", descripcion_larga "Es una tina baja, excavada en el suelo de la lavandería. Habitualmente está llena de prendas, tributo a la calidad del servicio del local: nunca faltan clientes y siempre hay trabajo pendiente. Las ropas están mezclada con orina, un detergente siempre mano y muy efectivo... aunque apesta.", antes [; Oler: "La ropa en la tina y la propia tina huelen fuertemente a orines, pero es lo normal. La orina es un insumo económico y como detergente es muy efectivo... así que se usa en abundancia."; Meterse, Entrar, BuscarEn: "Puaj... no gracias, aquí no se me ha perdido nada."; Coger, Empujar, Tirar: "Pesa demasiado... y no quiero echar a perder el trabajo de los esclavos."; Orinar: ! No hemos bebido 4 vceces if (Fuente.capacidad < 4) "No tengo ganas en este momento."; else if (self.capacidad == 0) { self.capacidad = 1; Fuente.capacidad = 0; ! puntuacion++; Conseguido(0); OrinaTina.proyeccion(1); rtrue; } else "No hace falta: ya hice mi ~aporte~ del día. En el drenaje de la plaza, en cambio..."; ], has escenario femenina soporte entrable ; ! PSI PSI Esclavos "esclavos" Lavanderia with nombre_mp 'esclavos' 'tipos', nombre_m 'esclavo' 'tipo', adjetivos 'dos' 'fornidos' 'fornido' 'gruesos' 'grueso', describir "Los esclavos están abatanando las ropas en la tina de la lavandería.", descripcion_corta "Parados en medio de la tina, están pisoteando con energía las ropas para impregnarla de la orina que las irá limpiando.", descripcion_larga "Son dos tipos fornidos, gruesos, traidos de alguna parte del este. Están parados en medio de la tina, como colosos en movimiento, pisoteando con energía las ropas, mientras resoplan como bueyes.^ La colada, bajo sus fuertes pisadas, se va impregnando de la orina que las irá limpiando.", vida [; Hablar: "Resoplan un poco, pero no dicen palabra. No pueden perder el aliento hablando..."; ], has masculino nombreplural ; PSI Lavandera "lavandera" Lavanderia with nombre 'lavandera' 'mujer' 'persona', describir "La lavandera está restregando en una esquina.", descripcion_corta "Está restregando unas prendas que los orines no han terminado de limpiar. De vez en cuando, se detiene y retira del enjuague las prendas que ya están listas para secado.", descripcion_larga "Es una mujer robusta, con un rostro algo ajado por los años y los rigores del trabajo. En la cara tiene dibujada una media sonrisa, como si tuviera la mente en otro sitio mientras restriega unas prendas que los orines y los pisotones de los esclavos no han terminado de limpiar.^ De vez en cuando, se detiene y retira del enjuague las prendas que ya están listas para secado...^ ...y vuelve a restregar otras prendas, sin detenerse nunca.", vida [; Hablar: ! No le hemos hablado antes if (self hasnt visitado) { give self visitado; LavanderaSaludo.proyeccion(1); rtrue; ! No hemos hablado con el Médico } else if ( (Medico in Limbo) && (Pederasta hasnt encendido) && (self hasnt abierta) ) { give self abierta; "La noto un tanto cansada. ~¿Te sientes bien?~, le pregunto.^ Se detiene un minuto para pensar.^ ~Si ves al galeno en el foro, me vendría bien una visita suya.~^ Y callando, vuelve a restregar..."; ! No hemos hablado con el Guardia } else if ( (Guardia in Plaza) && (Guardia hasnt encendido) && (Pederasta hasnt encendido) && (self hasnt encendido) ) { give self encendido; "La veo inquieta. ~¿Pasa algo?~, le pregunto.^ Suspira.^ ~Habla con el guardia afuera~ resopla, ~creo que algo lo tiene preocupado.~^ Y callando, vuelve a lo suyo..."; } else "Menea la cabeza en silencio y sigue restregando..."; ], has femenino; ! Decorados Objeto_Localidad Objeto_Localidad_Lavanderia "lavanderia" with nombre_f 'lavanderia' 'casa', nombre_m 'edificio', descripcion [; if (localizacion == Plaza) <>; else if (localizacion == Terraza) "Hay que entrar, primero. El muro no es transparente..."; else <>; ], antes [; Salirse: if ( (Localizacion == Lavanderia) || (Localizacion == Triclinio) ) <>; else "No estoy dentro de la lavandería..."; Meterse, Entrar: if ( (Localizacion == Plaza) || (Localizacion == Terraza) ) <>; else if (Localizacion == Triclinio) <>; else if (Localizacion == Lavanderia) "Ya estoy dentro de la lavandería."; ], esta_en [; if ( (Localizacion == Terraza) || (Localizacion == Lavanderia) || (Localizacion == Triclinio) || (Localizacion == Plaza) ) return true; ], has femenino escenario entrable abierto; Objeto_Escenario Planta_Baja_Lavanderia "planta baja de lavanderia" with nombre_f 'entrada' 'planta', adjetivos 'baja' 'lavanderia', descripcion [; if (localizacion == Plaza) "La entrada de la lavandería lleva justo a la plaza. No tiene puertas ya que, según la lavandera, eso facilita el acceso a los clientes y de eso se trata el negocio: de tener clientes..."; else if (localizacion == Triclinio) "Hay que bajar por la escalera, primero. El piso no es transparente..."; else ! En la Lavanderia <>; ], antes [; Salirse: if (Localizacion == Lavanderia) <>; else ! En la Plaza o el Triclinio "No estoy en la planta baja..."; Meterse, Entrar: if (Localizacion == Plaza) <>; else if (Localizacion == Triclinio) <>; else ! En la Lavandería "Ya estoy dentro de la lavandería."; ], esta_en [; if ( (Localizacion == Triclinio) || (Localizacion == Lavanderia) || (Localizacion == Plaza) ) return true; ], has femenino escenario entrable abierto; Objeto_Escala_Madera EscaleraLavanderia "escalera ascendente" Lavanderia with adjetivos 'ascendente'; Objeto_Escenario Orina "orina" Lavanderia with nombre_f 'orina' 'meada', nombre_fp 'orines' 'meadas', nombre_m 'orin' 'pipi' 'olor' 'detergente', nombre_mp 'orines', adjetivos 'fuerte', descripcion "La orina flota entre las ropas que abatanan los esclavos, y salpica poco: los esclavos conocen bien su trabajo.", antes [; Probar, Beber: "No, que ásco... para eso, afuera hay una fuente y es mucho más potable..."; Oler: "El olor de la orina es fuerte y parece... bah, mi anciano preceptor haría símiles, pero, que diáblos, huele mal, muy mal..."; Coger, Tocar, BuscarEn, Coger, Empujar, Tirar: "Puaj... no gracias, aquí no se me ha perdido nada."; Orinar: <>; ] has femenino; Objeto_Escenario Colada "colada" Lavanderia with nombre_f 'colada', nombre_fp 'ropas' 'vestimentas' 'prendas', nombre_m 'trabajo', nombre_mp 'vestidos', descripcion "Las prendas que los clientes han dejado para lavado. En general, son ropas más bien caras, ya que la gente del barrio lava la suya en la fuente pública.", antes [; Oler: <>; Frotar: "No gracias... este trabajo ya lo están haciendo otros, je..."; BuscarEn: "Puaj... no gracias, aquí no se me ha perdido nada."; Coger, Empujar, Tirar: "No quiero echar a perder el trabajo de los esclavos, y lo de la lavandera... no me atrevo."; Orinar: <>; ] has femenino; Objeto_Escenario Enjuague "cubo de enjuague" Lavanderia with nombre_f 'agua', nombre_m 'cubo' 'enjuague', adjetivos 'madera' 'grande', descripcion "Es un cubo de madera grande en que la lavandera está restregando unas prendas que los orines no han terminado de limpiar.", antes [; Oler: "Huele ligeramente mejor que el resto de las ropas."; BuscarEn, Coger, Empujar, Tirar, Orinar: "No me atrevo a echar a perder el trabajo de la lavandera..."; ] has masculino; Objeto_Escenario Ventanas "ventanas" Lavanderia with nombre_f 'ventana', nombre_fp 'ventanas', descripcion "Están cortadas directamente en la pared, cerca del techo, y no tienen postigos o celosías. Ahora mismo están despejadas y ventilan como buenamente pueden el lugar.", antes [; Meterse, Entrar: "Están demasiado alto para eso y salir a pie es más fácil, la verdad..."; ] has femenino nombreplural; ! El Barrio ! La Plaza Habitacion Plaza "La Plaza" with descripcion_corta "La plaza adoquinada del barrio, con su fuente pública de agua al medio. Al costado oeste de la lavandería hay un callejón y calle abajo se llega al foro local.", descripcion_larga "La plaza es el corazón del barrio, y a juzgar por su constante actividad, es un sitio sano y vital. El suelo adoquinado no conoce el descanso, y siempre hay vecinos transitando, ocupados en esto y aquello.^ Su fuente pública de agua, ubicada al medio de todo, domina el lugar y mantiene fresco el barrio todo el año.^ Al costado oeste de la lavandería hay un callejón y calle abajo se llega al foro local.", antes [; Orinar: if (uno==0) <>; Beber: if (uno==0) <>; Ir: if ( (localizacion == self) && (uno==obj_s) ) { ! El Pederasta está muerto y no hemos pedido ayuda al Guardia -> no vamos al Foro if ( (Pederasta has encendido) && (Guardia hasnt abierto) ) "No puedo irme así no más: necesito que alguien cuide del cadáver en mi ausencia."; ! No vamos al Foro con la Pelota if (Pelota in Jugador) { move Pelota to Plaza; give Pelota escenario; ! No podemos coger la pelota print "Después de esquivarlos un par de veces, les devuelvo la pelota y los niños la reciben entre risas.^"; <>; } } Salidas: "Al costado oeste de la lavandería hay un callejón y calle abajo se llega al foro local."; ], ! Ciclo automático para devolver la pelota a los niños o tirarla al callejón para sorprender a pederasta cada_turno [; ArrancarDaemon(self); ], cantidad 5, daemon [; if ( (localizacion~=Plaza) || (Pelota notin Jugador) ){ self.cantidad=5; PararDaemon(self); rtrue; } if (self.cantidad > 0) self.cantidad--; switch(self.cantidad) { 3: "^Los niños miran la pelota y cuchichean entre ellos."; 2: "^Algunos niños me empujan mientras pasan corriendo."; 1: "^Uno de los niños trata de quitarme la pelota, pero lo esquivo."; 0: if ( (Pederasta hasnt encendido) && (Pederasta has visitado) ) { ! El Pederasta está vivo y lo hemos examinado print "^Harto de la tensión, decido pasar a la acción... y lanzo la pelota hacia el callejón. "; <>; } else { print "^Harto de la tensión, decido reanudar el juego. "; <>; } }; ], al_s Foro, abajo [;<>;], afuera [;<>;], al_o Callejon, adentro Lavanderia, arriba [;<>;] ; ! Objetos de Puzzle Objeto_Puzzle Fuente "fuente" with nombre_f 'fuente', nombre_m 'vaso', adjetivos 'roca' 'publica' 'aspera' 'solida' 'pesada', descripcion_corta "Hecha de roca, la fuente mantiene un chorro generoso de agua limpia y fresca. Lo que sobresale del vaso se escurre por el drenaje a un costado.", descripcion_larga "Hecha de roca, la fuente mantiene un chorro generoso de agua limpia y fresca. Lo que sobresale del vaso se escurre por el drenaje a un costado.^ En medio de la agitación cotidiana, detenerse a contemplarla o escucharla es un regalo de calma.", capacidad 0, antes [; Escuchar: "Escucho un rato la caída del agua.^ La música del agua, siempre cambiante, sin pausas pero sin estridencias, es un bálsamo de paz en esta agitación constante que es Roma."; Coger, Tocar, Empujar, Tirar : if (Localizacion ~= Plaza) "Para eso tendría que ir a la plaza primero..."; else "La fuente es áspera y bastante sólida. No hay como moverla..."; Probar, Beber : if (Localizacion ~= Plaza) "Para eso tendría que ir a la plaza primero..."; ! Primera vez que bebemos else if (self hasnt encendido) { give self encendido; self.capacidad = self.capacidad + 1; "Bebo de la fuente. El agua está fresca..."; ! No hemos bebido lo suficiente } else if (self.capacidad < 4) { print "Bebo un poco más.^"; self.capacidad = self.capacidad + 1; ! Ya estamos llenos if (self.capacidad == 4) "Vaya... me han entrado ganas de orinar."; else rtrue; } else "Ya no tengo sed..."; Oler : if (Localizacion ~= Plaza) "Para eso tendría que ir a la plaza primero..."; else "Es un olor fresco, suave e insulso... menos mal. Digo, es agua."; ], esta_en [; if ( (Localizacion == Terraza) || (Localizacion == Plaza) || (Localizacion == Callejon) ) return true; ], has escenario femenino comestible; Objeto_Puzzle Pelota "pelota" Limbo with nombre 'pelota' 'balon' 'bola', adjetivos 'barro' 'cocido', listarse "la pelota de barro", describir [; if (self in Callejon) "La pelota está inmóvil en un rincón del callejón"; ], descripcion_corta [; print "Es una pelota de barro cocido"; if (self in Jugador) print ", muy dura y pesada"; ! La pelota fue usada para matar al Pederasta if (self has encendido) ". La pelota tiene una buena trizadura, pero si la limpian se puede jugar con ella todavía..."; else "."; ], descripcion_larga [; print "Es una pelota de barro cocido"; if (self in Jugador) print ", muy dura y pesada"; print ". No es muy elegante, pero considerando lo que va a durar y el trato a que va estar sometida, es mejor hacerla basta y si se rompe, bueno, se hace una nueva y ya.."; if (self has encendido) ! La pelota fue usada para matar al Pederasta ". La pelota tiene una buena trizadura, pero si la limpian se puede jugar con ella todavía..."; else "."; ], antes [; Frotar: if (self has encendido) ! La pelota fue usada para matar al Pederasta "La pelota tiene una buena trizadura, pero no seré yo el que la limpie para que juguen con ella..."; Tirar, Lanzar: if (otro==0) { if (Ninos in Localizacion) <>; else if ( (Localizacion == Callejon) || (Localizacion == Terraza) ) <>; else ! En la la Lavandería o el Triclinio "Así no. Sólo causaría destrozos..."; } else if (otro==Ninos) <>; else if (otro==NinosTerraza) <>; else if (otro==Pederasta) <>; else if (otro==PederastaTerraza) <>; else if (otro==Objeto_Localidad_Callejon) { if (Localizacion == Plaza) { if (Pederasta hasnt encendido) { ! El Pederasta está vivo ! puntuacion++; Conseguido(2); give Pederasta abierto; ! Sorprendemos al Pederasta move self to Callejon; give self ~escenario; ! Podemos Coger la Pelota move Guardia to Callejon; give Guardia ~escenario; move GuardiaTerraza to Limbo; move Ninos to Callejon; give Ninos ~escenario; move NinosTerraza to Limbo; if (Pederasta hasnt visitado) ! No hemos examinado al Pederasta PelotaCallejonTipo.proyeccion(1); else ! Hemos examinado al Pederasta PelotaCallejonDeimos.proyeccion(1); <>; } else "Mejor que no. El espectáculo en el callejón es como Deimos: poco recomendable para los niños..."; } else if (Localizacion == Callejon) { move self to Callejon; give self ~escenario; ! Podemos Coger la Pelota "Lanzo la pelota contra un de las paredes del callejón. La pelota rebota y cae al suelo con un ruido seco."; } else { ! En la Terraza if (Pederasta hasnt visitado) ! No hemos examinado al Pederasta "Mejor que no. Nunca sabe uno quién anda merodeando allá abajo, y lo último que quiero es golpear a un inocente..."; else if (Pederasta hasnt encendido) { ! El Pederasta está vivo give Pederasta encendido; ! Matamos al Pederasta give self encendido; ! La pelota fue usada para matar al Pederasta move self to Callejon; move Daga to Callejon; ! puntuacion++; Conseguido(1); MataPelotaTerraza.proyeccion(1); <>; } else ! El Pederasta está muerto. "Mejor que no. Si le doy por error a alguien más, tendría que ocuparme de dos cadáveres..."; } } else if (otro==Objeto_Localidad_Plaza) { if (Localizacion == Plaza) <>; else if (Localizacion == Callejon) { if (Ninos in Plaza) { move self to Plaza; give self escenario; ! No podemos Coger la Pelota "Escucho las risas encantadas de los niños cuando vuelven a jugar con la pelota."; } else <>; } else ! En la Terraza "Mejor que no. Si la lanzo desde esta altura, seguro se destroza al llejar al suelo..."; } else ! Se usa el Objeto_Localidad, en la la Lavandería o el Triclinio "Aquí no. Sólo causaría destrozos..."; Jugar, Tocar, Atacar : <>; Dar: if (otro==Ninos) <>; Coger : if (self has escenario) ! No podemos Coger la Pelota "Los niños no me dejan cogerla y siguen pasándosela entre risas. Sólo quieren jugar..."; if (self has encendido) ! La pelota fue usada para matar al Pederasta "Mejor la dejo ahí. Ya la limpiará alguien más... si quiere."; ], has escenario femenino; ! PSI PSI Guardia "guardia" Plaza with nombre 'lucio' 'guardia' 'guarda' 'vigilante', describir [; ! Solo visible cuando el Guardia está en el Callejón if (Pederasta hasnt encendido) ! El Pederasta está vivo "El guardia bloquea la salida del callejón, con los puños apretados."; else ! El Pederasta está muerto "El guardia vigila el cadáver de Deimos."; ], descripcion [; if (self in Plaza) "El guardia ha sido contratado recientemente por los vecinos, para cuidar el barrio. No es muy fornido, pero lo he visto un par de veces en el Campo de Marte y sabe moverse."; ! Guardia en el Callejón ! El Pederasta está vivo else if (Pederasta hasnt encendido) { if (Ninos in Callejon) { print "El guardia está inmóvil como una estatua, bloqueando la salida del callejón, mirando de reojo a los niños pero sin perder de vista "; ! No hemos examinado al Pederasta if (Pederasta hasnt visitado) "al tipo."; else "a Deimos."; } else "El guardia está inmóvil como una estatua, bloqueando la salida del callejón, mirando a Deimos como si fuera un perro rabioso."; } ! El Pederasta está muerto else "El guardia está apoyado en la pared de la lavandería, junto al cadáver de Deimos. De vez en cuando le dirige una mirada de desprecio."; ], vida [; Hablar : if (self in Plaza) { ! El Pederasta está vivo if (Pederasta hasnt encendido) { ! No hemos hablado con el Guardia if (self hasnt encendido){ give self encendido; GuardiaSaludo1.proyeccion(1); GuardiaSaludo2.proyeccion(1); rtrue; ! Ya hablamos con el Guardia y hemos identificado a Deimos } else if (Pederasta has visitado) { give self ~escenario; move self to Callejon; give Pederasta abierto; GuardiaDeimosPlaza.proyeccion(1); JugadorA(Callejon); rtrue; } else "Me responde con un gruñido y me hace un gesto brusco. No quiere que lo distraiga..."; ! El Pederasta a Muerto y pedimos ayuda al Guardia; no ha abandonado la Plaza } else if (Pederasta notin Limbo) { give self abierto; give self ~escenario; move self to Callejon; GuardiaCadaverPlaza.proyeccion(1); <>; ! El cadaver del Pederasta ya fue retirado y no hemos conversado con el Guardia } else if (Daga hasnt encendido) { give Daga encendido; print "~¡Hola, amigo!~ lo saludo.^ Parco como siempre, el Guardia solo asiente.^ Bajando la voz, le pregunto ~¿Ya vinieron por el cadáver, verdad?~^ El Guardia vuelve a asentir, sin decir palabra."; ! No tenemos la Daga y aun no la hemos trocado o vendido if ( (Daga notin Jugador) && (Daga hasnt abierto) ) { move Daga to Jugador; print "^Antes de que atine a decir algo más, el Guardia me pasa "; ! Hemos examinado la daga if (Daga hasnt visitado) { give Daga visitado; print "una daga.^ ~Se le cayó a Deimos~, me indica, brusco."; } else print "la daga de Deimos."; } "^Le doy las gracias con una palmada en el hombro.^ El Guardia se encoge de hombros y sigue en lo suyo: vigilar..."; } else "Me responde con un gruñido y me hace un gesto brusco. No quiere que lo distraiga..."; ! Guardia en el Callejón ! El Pederasta está vivo } else if (Pederasta hasnt encendido) { if (Ninos in Callejon) "Le susurro ~Déjame sacar a los niños de aquí.~^ El guardia me responde con un gruñido."; ! No hemos examinado al Pederasta else if (Pederasta hasnt visitado) { GuardiaDelataPederasta.proyeccion(1); give Pederasta visitado; ! Damos por examinado al Pederasta rtrue; ! Atacamos al Pederasta } else { if (velocidad_texto == 0) print "Grito ~¡Ahora!~ y ataco a Deimos.^"; else { PrintAutoPausa("Grito ~¡Ahora!~ "); PrintAutoPausa("y ataco a Deimos.^"); } <>; } ! El Pederasta está Muerto y pedimos ayuda al Guardia } else if (self hasnt abierto) { give self abierto; GuardiaCadaverCallejon.proyeccion(1); rtrue; ! El Pederasta está Muerto y ya pedimos ayuda al Guardia } else "Me responde con un gruñido y me hace un gesto brusco. No quiere estar aquí más de lo necesario..."; ], has masculino escenario; PSI Ninos "niños" Limbo with nombre_mp 'ninos' 'muchachos' 'pequenos', nombre_m 'nino' 'muchacho' 'pequeno', describir ! Solo visible cuando los Niños están en el Callejón "Los niños están a la entrada del callejón, con sus rostros atemorizados.", descripcion_corta [; if (self in Plaza){ print "Son los hijos de los vecinos, que entretienen sus ocios con un poco de deporte."; if (Pelota notin Plaza) " Algunos me miran con caras de pocos amigos."; else rtrue; ! Los niños están en el Callejón y hemos sorprendido al Pederasta hablándoles } else { print "Los niños miran "; ! No hemos examinado al Pederasta if (Pederasta hasnt visitado) print "al tipo"; else print "a Deimos"; " con temor, y me miran a mí y al guardia con algo de verguenza."; } ], descripcion_larga [; if (self in Plaza){ print "Son los hijos de los vecinos: muchos pequeños y algunos muchachos que acaso me llegan a la cintura. Se los ve felices, corriendo de aquí para allá, entreteniendo sus ocios con un poco de deporte."; if (Pelota notin Plaza) print " Algunos me miran con caras de pocos amigos: querrán su pelota, supongo..."; else "^Viéndoles divertirse juntos, sucios de sudor y polvo, la verdad es que mi infancia en casa me parece más bien triste y aburrida."; ! Los niños están en el Callejón y hemos sorprendido al Pederasta hablándoles } else { print "Los niños miran "; ! No hemos examinado al Pederasta if (Pederasta hasnt visitado) print "al tipo"; else print "a Deimos"; " con temor, y me miran a mí y al guardia con algo de verguenza, mirándose los pies o desviando el rostro cuando notan mi presencia."; } ], vida [; Besar, Atacar : "No lo haré. Son niños y muy simpáticos... pero no son mis hijos."; Hablar : if (self in Plaza) { if (Pelota in Jugador) "Los niños no me hacen caso y me hacen gestos para que les lance la pelota."; else if (Pelota notin Plaza) "Los niños no me hacen caso y me hacen gestos de molestia: querrán su pelota, supongo..."; else "Los niños no me hacen caso y se ríen mientras juegan."; ! Los niños están en el Callejón } else { print "Los niños no contestan y sólo gimotean, haciendo gestos en dirección "; ! No hemos examinado al Pederasta if (Pederasta hasnt visitado) "al tipo."; else "a Deimos.^ Maldito bastardo..."; } ], antes [; Jugar : if (Pelota in Jugador) { move Pelota to Plaza; give Pelota escenario; ! No podemos coger la pelota if (Ninos in Plaza) { "Después de esquivarlos un par de veces, les devuelvo la pelota y los niños la reciben entre risas."; ! Los niños están en el Callejón } else { move Ninos to Plaza; give Ninos escenario; move NinosTerraza to Terraza; print "Les guiño un ojo a los niños y lanzo la pelota a la plaza. El guardia se hace ligeramente a un lado, esquivándola. Los niños corren felices tras ella.."; if (Pederasta has visitado) ! Ya hemos examinado al Pederasta ". y escucho un gemido de Deimos.^ Su tiempo se agota... y el cabrón lo sabe."; else "."; } ! Podemos coger la Pelota } else if (Pelota hasnt escenario) { move Pelota to Jugador; <>; ! Esto gatilla coger la Pelota y luego Lanzarla a los Niños. ! No podemos coger la pelota } else { give Pelota ~escenario; ! Podemos coger la pelota move Pelota to Jugador; "Me meto entre la chiquillada y trato de coger la pelota. Los niños están encantados y jugamos un buen rato, esquivando o tratando de coger la bola. Finalmente, me hago con la pelota y los niños me miran, expectantes."; } ], has masculino nombreplural escenario; PSI Vecinos "vecinos" with nombre_f 'vecina' 'persona' 'gente' 'mujer', nombre_m 'vecino' 'hombre' 'bullicio' 'ajetreo', nombre_mp 'vecinos' 'romanos' 'extranjeros' 'hombres', nombre_fp 'personas' 'vecinas' 'mujeres', describir [; print "Los vecinos van de aquí para allá, entrando y saliendo de la plaza, ocupados en sus quehaceres"; if (Ninos in Plaza){ if (Pelota in Plaza) print ", mientras los niños juegan a la pelota cerca de la fuente"; else print ", mientras los niños corren, persiguiéndose unos a otros cerca de la fuente"; } else print ", aprovechando que los niños aún no salen a jugar y aún hay poca gente afuera"; if (Guardia in Plaza) ". Pese al ajetreo y al bullicio, el guardia del barrio vigila la plaza atentamente."; else "."; ], descripcion_corta "Los vecinos, en su mayoría romanos, van de aquí para allá, ocupados en sus quehaceres, sin apenas hablarse. De mi, apenas hacen caso.", descripcion_larga "La mayoría de los vecinos son romanos, salvo algunos extranjeros que suelen venir por negocios y acaso están un día o dos. Todos van de aquí para allá, apurados en sus asuntos y aparte de algún breve saludo en voz queda, no se detienen a conversar.^ Algunos me reconocen y me hacen algún gesto breve, pero aparte de eso me dejan en paz.", vida [; Hablar : "Los saludo y responden con un gesto breve para luego seguir en lo suyo."; ], esta_en [; if ( (Localizacion == Plaza) || (Localizacion == Terraza) ) return true; ], has masculino nombreplural; ! Decorados Objeto_Escenario Agua "chorro de agua" with nombre_f 'agua' 'musica' 'caida', nombre_m 'chorro', adjetivos 'limpia' 'fresca' 'fria', descripcion "Es un chorro generoso de agua limpia y fresca.", antes [; Escuchar: <>; Coger, Tocar, Empujar, Tirar : if (Localizacion ~= Plaza) "Para eso tendría que ir a la plaza primero..."; else "El agua es suave y fría al tacto..."; Probar, Beber : <>; Oler : <>; ], esta_en [; if ( (Localizacion == Terraza) || (Localizacion == Plaza) || (Localizacion == Callejon) ) return true; ], has escenario masculino comestible; Objeto_Localidad Objeto_Localidad_Plaza "plaza" with nombre_f 'plaza' 'calle', nombre_fp 'calles', nombre_m 'barrio', descripcion [; if (Localizacion == Terraza) "La plaza adoquinada del barrio, con su fuente pública de agua al medio. Al costado oeste de la lavandería hay un callejón y calle abajo se llega al foro local."; else if (Localizacion == Lavanderia) "La plaza está saliendo de la lavandería. Desde afuera nos llega su agitación..."; else if (Localizacion == Callejon){ print "Se ve claramente la plaza y la fuente"; if (Ninos in Plaza) print ", con los niños jugando aquí y allá"; "."; } else if (Localizacion == Plaza) <>; else ! En el foro "La plaza de mi barrio está calle arriba. En general, es un lugar mucho menos agitado que el foro..."; ], antes [; Salirse: if (Localizacion == Plaza) <>; else "No estoy en la plaza..."; Meterse, Entrar: if (Localizacion == Terraza) "Tendría que entrar al triclinio primero y luego bajar por la lavandería. Es un poco alto, para ir desde aquí..."; else if (Localizacion == Lavanderia) <>; else if (Localizacion == Callejon) <>; else if (Localizacion == Foro) <>; else ! En la Plaza "Ya estoy en la plaza."; ], esta_en [; if ( (Localizacion == Terraza) || (Localizacion == Lavanderia) || (Localizacion == Plaza) || (Localizacion == Callejon) || (Localizacion == Foro) ) return true; ], has femenino escenario; Objeto_Escenario Drenaje "drenaje" with nombre 'drenaje' 'agujero' 'desague' 'costado', adjetivos 'rectangular', descripcion_corta "Es poco más que un agujero rectangular, pero los vecinos le hemos agregado barrotes para evitar accidentes. Desemboca en las cloacas de la ciudad.", descripcion_larga "Ubicado a un costado de la fuente, el drenaje es poco más que un agujero rectangular, pero los vecinos le hemos agregado barrotes de hierro en bruto, para evitar accidentes: con los niños corriendo tan cerca y distraídos, antes de instalarlos habían ocurrido desgracias.^ El drenaje desemboca en las cloacas de la ciudad, de las que por suerte aquí no llega olor alguno.", antes [; Oler: if (Localizacion ~= Plaza) "Para eso tendría que ir a la plaza primero..."; else "Gracias a la fuente, sólo se siente un tufillo muy lejano..."; BuscarEn: if (Localizacion ~= Plaza) "Para eso tendría que ir a la plaza primero..."; else "No se ve mucho para abajo. Y en cuanto a urgar aquí... puaj... no gracias, aquí no se me ha perdido nada."; Orinar: if (Localizacion ~= Plaza) "Para eso tendría que ir a la plaza primero..."; ! No hemos bebido 4 vceces else if (Fuente.capacidad < 4) "No tengo ganas en este momento."; else { Fuente.capacidad = 0; ! Ya estamos llenos "Dándole la espalda a la gente con algo de decoro, orino con cuidado sobre el drenaje. Qué alivio..."; } Coger, Empujar, Tirar, Quitar: <>; ], esta_en [; if ( (Localizacion == Terraza) || (Localizacion == Plaza) || (Localizacion == Callejon) ) return true; ], has masculino; ! Decorados Decorado_Ampliado Decorado_Plaza_Adoquines Plaza with describir 'adoquines' "Son cantos de río, cortados con maestría y puestos con cuidado. Están apisonados a firme y no se ven hendiduras o grietas. No se ve ninguno suelto y están un poco húmedos, gracias a la fuente. Hay que andar ojo con las patinadas, pero los vecinos y un servidor ya estamos acostumbrados." G_MASCULINO + G_PLURAL 'adoquin' "Son cantos de río, cortados con maestría y puestos con cuidado. Están apisonados a firme y no se ven hendiduras o grietas. No se ve ninguno suelto y están un poco húmedos, gracias a la fuente. Hay que andar ojo con las patinadas, pero los vecinos y un servidor ya estamos acostumbrados." G_MASCULINO 'adoquinado' "Son cantos de río, cortados con maestría y puestos con cuidado. Están apisonados a firme y no se ven hendiduras o grietas. No se ve ninguno suelto y están un poco húmedos, gracias a la fuente. Hay que andar ojo con las patinadas, pero los vecinos y un servidor ya estamos acostumbrados." G_MASCULINO 'canto' "Una piedra de río, cortada con maestría por algún cantero." G_MASCULINO 'cantos' "Una piedra de río, cortada con maestría por algún cantero." G_MASCULINO + G_PLURAL 'piedra' "Una piedra de río, cortada con maestría por algún cantero." G_FEMENINO, antes [; BuscarEn: "No hay nada de nada entre los adoquines... porque no hay hendiduras o grietas en las que pueda esconderse cosa alguna."; Coger, Empujar, Tirar: "Tiro de un adoquín con ganas, pero no hay caso. Ni siquiera logro soltarlo."; ]; Decorado_Ampliado Decorado_Plaza_Drenaje with describir 'barrotes' "Son barrotes de hierro en bruto que los vecinos le hemos agregado al drenaje, para evitar accidentes: con los niños corriendo tan cerca y distraídos, antes de instalarlos habían ocurrido desgracias." G_MASCULINO + G_PLURAL 'barrote' "Son barrotes de hierro en bruto que los vecinos le hemos agregado al drenaje, para evitar accidentes: con los niños corriendo tan cerca y distraídos, antes de instalarlos habían ocurrido desgracias." G_MASCULINO 'hierro' "Un material noble, que se oxida de a poco pero mientras dura no hay quien lo rompa." G_MASCULINO, antes [; Oler: <>; BuscarEn: <>; Coger, Empujar, Tirar, Quitar: if (Localizacion ~= Plaza) "Para eso tendría que ir a la plaza primero..."; else "Tiro de uno de los barrotes con ganas, pero está bien firme y ni siquiera logro soltarlo."; ], esta_en [; if ( (Localizacion == Terraza) || (Localizacion == Plaza) || (Localizacion == Callejon) ) return true; ]; ! El Callejón Habitacion Callejon "El Callejón" with descripcion_corta "El callejón, casi en penumbras, corre al costado oeste de la lavandería. En general está limpio, como hoy, pero a veces alguien deja abandonado algún trasto o cesta. Saliendo del callejón se vuelve a la plaza.", descripcion_larga "El callejón corre al costado oeste de la lavandería. Es usado como area de servicio por la gente del barrio y en general está limpio, aunque apenas recibe luz natural y casi siempre está en penumbras.^ Como hoy, suele estar limpio, pero hay que andar con cuidado si alguien dejó abandonado algún trasto o cesta.^ Saliendo del callejón se vuelve a la plaza.", antes [; Ir: if (localizacion == self) { ! No salimos del Callejon si: ! ...están los Niños presentes if (Ninos in Callejon) "No puedo actuar si los niños siguen aquí. Tengo que enviarlos de vuelta a la plaza..."; ! El Guardia está presente if (Guardia in self){ ! ...y el Pederasta está vivo if (Pederasta hasnt encendido) "No puedo dejar que el guardia arregle esto sólo. Yo lo metí en esto y tengo que ayudarlo."; ! ...y el Pederasta está muerto, pero aún no hemos pedido ayuda al Guardia else if (Guardia hasnt abierto) "No puedo irme así no más: necesito que alguien cuide del cadáver en mi ausencia."; else if (Daga in self) { ! No dejar la daga abandonada en el callejón. move Daga to Jugador; print "Antes de irme, el Guardia me pasa "; ! Hemos examinado la daga if (Daga hasnt visitado) { give Daga visitado; print "una daga.^ ~Se le cayó a Deimos~, me indica, brusco. ~No la dejemos "; } else print "la daga.^ ~No la dejes "; print "aquí, donde los niños puedan hallarla.~^"; <>; } } } Salidas: "Saliendo del callejón se vuelve a la plaza."; ], ! Ciclo automático para, si están los Niños, tirar la pelota a la plaza y luego atacar al Pederasta cada_turno [; if (Pederasta has abierto) ! El daemon funciona si el Pederasta ha sido sorprendido ArrancarDaemon(self); ], cantidad 10, daemon [; ! El daemon no funciona si if ( (Ninos notin self) && ! Si los Niños no están en el Callejón (Pederasta has encendido) ) { ! O si el Pederasta está muerto self.cantidad=10; PararDaemon(self); rtrue; } if (self.cantidad > 0) self.cantidad--; if (Ninos in self){ ! Los Niños están aún en el Callejón switch(self.cantidad) { 7: print "^El ambiente está sumamente tenso."; if (Pederasta hasnt visitado) ! No hemos examinado al Pederasta ".. y los niños miran al tipo con temor, y a mí con algo de verguenza. Algo aquí no encaja."; else " Como no haga algo pronto, alguno de los niños podría entrar en pánico y esto se pondrá feo. Tengo que sacarlos de aquí..."; 4: "^Uno de los niños da un hipido. Parece a punto de echarse a llorar."; 2: if (Pederasta hasnt visitado) { ! No hemos examinado al Pederasta print "^Esto se está poniendo peligroso. Voy a saber qué quiere este tipo.^"; <>; } else "^Deimos se está moviendo nerviosamente... y es capaz de cualquier canallada. Tengo que sacar a los niños de aquí ya mismo..."; 0: print "Harto de la tensión, decido jugármela por los niños. "; self.cantidad = 6; ! Se resetea el contador <>; }; } else { ! Solo resta atacar al Pederasta switch(self.cantidad) { 4: if (Pederasta hasnt visitado) { ! No hemos examinado al Pederasta print "^Con los niños fuera del problema, voy a saber qué quiere este tipo.^"; <>; } else "^Ahora es cosa de deshacernos de Deimos..."; 2: "^Será mejor ponerme de acuerdo con el guardia. No hay que correr riesgos..."; 0: print "Harto de la tensión, decido pasar a la acción. "; <>; }; } ], al_e Plaza, afuera [;<>;] ; ! Objetos de Puzzle Objeto_Puzzle Daga "daga" Limbo with nombre_f 'cosa' 'daga', nombre_m 'filo' 'algo' 'brillo', adjetivos 'pequena' 'afilada' 'pequeno' 'afilado' 'metal' 'metalica' 'metalico' 'brillante' 'brillando', listarse "una daga pequeña", describir [; ! No la hemos examinado aun if (self hasnt visitado) "Hay algo metálico brillando en el suelo."; else "Hay una daga metálica abandonada en el suelo."; ], descripcion_corta [; print "Es una daga metálica pequeña. "; ! No la hemos examinado aun if (self hasnt visitado) { give self visitado; "Se le debe haber caído a Deimos."; } else "Su dueño anterior ya no la echará de menos."; ], descripcion_larga [; print "Es una daga metálica, de no muy buena calidad, pero se nota a la vista que cumple su propósito. Es más bien pequeña, por lo que se puede llevar con disimulo sin delatarse. "; ! No la hemos examinado aun if (self hasnt visitado) { give self visitado; "Se le debe haber caído a Deimos."; } else "Su dueño anterior ya no la echará de menos."; ], antes [; Dar: if (otro == Herrero) { ! No hemos hablado con el Herrero aun if (Herrero hasnt visitado) print "Mejor hablo primero con el herrero. "; <>; } else "No puedo entregarle esto a cualquiera..."; Tocar : "¡Ouch! Está bien afilada..."; Dejar : if (localizacion == Callejon) rfalse; else "No conviene dejarla en cualquier sitio. Las cosas suelen perderse fácilmente, en Roma..."; ], has femenino; ! PSI PSI Pederasta "Deimos" Limbo with nombre 'deimos' 'tipo' 'hombre' 'cadaver' 'pederasta', adjetivos 'flaco' 'muy' 'flaquisimo' 'mal' 'encarado', describir [; if (self hasnt encendido) { ! No hemos examinado al Pederasta if (self hasnt visitado) print "Hay un tipo que no distingo bien y que "; else print "Deimos "; ! No hemos sorprendido al Pederasta aun if (self hasnt abierto) "está apoyado en un muro."; else if (Ninos in Callejon) "no sabe si mirar a los niños, al guardia o a mí."; else "pasea nerviosamente su mirada entre el guardia y yo."; } ! El Pederasta está muerto else { print "El cadáver de "; ! No hemos examinado al Pederasta if (self hasnt visitado) print "un tipo "; else print "Deimos "; "está tendido en el suelo del callejón."; } ], descripcion [; ! No hemos hablado con el Guardia if (Guardia hasnt encendido) "Es un tipo flaquísimo... y algo en él, algo que no logro precisar, no me gusta nada.^ Será mejor hablar con el guardia."; ! No hemos examinado al Pederasta else if (self hasnt visitado) { give self visitado; ExaminarPederasta1.proyeccion(1); ! No hemos sorprendido al Pederasta aun if (self hasnt abierto) { ExaminarPederasta2.proyeccion(1); " "; ! Está muerto o ya fue sorprendido -> leemos el resto } else if ( (self has encendido) || (self has abierto) ) <>; else rtrue; } ! El Pederasta está vivo if (self hasnt encendido) { ! No hemos sorprendido al Pederasta aun if (self hasnt abierto) "Es Deimos, un tipo mal encarado y de gustos poco recomendables para un lugar con niños, flaco como un cadáver e igual de atractivo."; ! Hemos sorprendido al Pederasta else if (Ninos in Callejon) "^Deimos está bastante nervioso y mira de un lado a otro, como buscando una salida del callejón."; else "^Deimos está francamente alterado y sus movimientos nerviosos delatan que sabe cuán desesperada es su situación."; } ! El Pederasta está muerto else "El cadáver de Deimos está tendido en el suelo del callejón, con la cabeza rota."; ], antes [; Frotar: ! Está muerto if (self has encendido) <>; Orinar: ! Está muerto if (self has encendido) "Daba asco en vida... pero muerto da aun más asco. No gracias..."; Coger: ! Está vivo if (self hasnt encendido) <>; ! Está muerto... :-P else "Prefiero no andar cargado con un cadáver en Roma..."; BuscarEn: ! Está vivo if (self hasnt encendido) <>; ! Está muerto... :-P "Prefiero no andar registrando un cadáver, por muy fresco que esté..."; Tirar, Empujar, Tocar: ! Está vivo if (self hasnt encendido){ if (otro~=Pelota) <>; else <>; ! Está muerto... :-P } else <>; ], vida [; Besar: ! Está vivo if (self hasnt encendido) "No me siento particularmente inclinado a esto con alguien así y en semejante lugar, la verdad..."; ! Está muerto... :-P else "¿¡Con un cadáver?! No, que asco..."; Hablar: ! Está vivo if (self hasnt encendido) { ! No hemos sorprendido al Pederasta aun if (self hasnt abierto) { ! No hemos examinado al Pederasta if (self hasnt visitado) { HablarPederasta1.proyeccion(1); <>; } else "~¿Qué se te ha perdido por aquí?~ lo increpo.^ ~En la plaza hay demasiado sol,~ responde con desgana, ~y aquí está más fresco...~^ Vaya respuesta sosa."; ! Ya hemos sorprendido al Pederasta } else { if (Ninos in Callejon){ ! No hemos examinado al Pederasta if (self hasnt visitado) { HablarPederasta2.proyeccion(1); <>; } else "~¿Qué diablos le decías a los niños?~ lo increpo.^ ~Que vol - volvieran a la pla - plaza,~ tartamudea, ~que a - a - allá hay mmm - ma - ma - más - sol...~^ Vaya respuesta sosa."; ! Los Niños no están en el Callejón } else { ! No hemos examinado al Pederasta if (self hasnt visitado) { HablarPederasta3.proyeccion(1); <>; } else "~Mal sitio escogiste para buscar niños~ le susurro.^ Deimos solo gime lastimeramente.^ Su tiempo se agota... y el cabrón lo sabe."; } } ! El Pederasta está muerto } else { print "El cadáver de"; ! No hemos examinado al Pederasta if (self hasnt visitado) print "l tipo "; else print " Deimos "; "no dice una palabra. Y es que los muertos no hablan, je..."; } Atacar: ! El Pederasta está vivo if (self hasnt encendido) ! No hemos examinado al Pederasta if (self hasnt visitado) "Mejor saber quién es primero..."; ! Ya hemos examinado al Pederasta else if (Ninos in Callejon) "Mejor alejo a los niños primero."; ! Matamos al Pederasta con la Pelota else if (otro==Pelota) { give self encendido; ! El Pederasta está muerto give Pelota encendido; ! La pelota fue usada para matar al Pederasta move Pelota to Callejon; move Daga to Callejon; ! puntuacion++; Conseguido(1); MataPelotaCallejon.proyeccion(1); <>; ! Matamos al Pederasta con la ayuda del Guardia } else if (Guardia in Callejon) { give self encendido; ! El Pederasta está muerto move Daga to Callejon; ! puntuacion++; Conseguido(3); GuardiaMataPederasta.proyeccion(1); <>; ! Atacamos al Pederasta sin ayuda ni armas: nos mata } else { banderafin = 4; PederastaMata.proyeccion(1); rtrue; } else "No hace falta, ya está muerto..."; ], has masculino; ! Decorados Objeto_Localidad Objeto_Localidad_Callejon "callejón" with nombre 'callejon', adjetivos 'oscuro', descripcion [; if (Localizacion == Callejon) <>; else { print "Es un callejón que corre al costado oeste de la lavandería. Está oscuro y no se vé casi nada para "; if (localizacion==Plaza) "adentro..."; ! En la Terraza else { print "abajo...^"; if (PederastaTerraza in Terraza) { ! No hemos examinado al Pederasta if (Pederasta hasnt visitado) "Hay alguien allá abajo, medio escondido."; ! El Pederasta está vivo else if (Pederasta hasnt encendido) "Deimos está allá abajo, medio escondido."; ! El Pederasta está muerto else { print "El cadáver de Deimos está tendido en el suelo del callejón"; if (Guardia in Callejon) ". El guardia monta guardia a su lado."; else "."; } } else rtrue; } } ], antes [; Salirse: if (Localizacion == Callejon) <>; else "No estoy en el callejón..."; Meterse, Entrar: if (Localizacion == Plaza) <>; else if (Localizacion == Callejon) "Ya estoy dentro del callejón."; else "Tendría que ir a la plaza primero..."; ], esta_en [; if ( (Localizacion == Plaza) || (Localizacion == Terraza) || (Localizacion == Callejon) ) return true; ], has masculino escenario entrable abierto; ! Roma ! El Foro Habitacion Foro "El Foro" with ! Presentación Segundo Acto descripcion_corta [; print "El foro local es amplio, rodeado de edificios públicos y un templo. "; if (Mensajero hasnt encendido) ! No hemos terminado la última misión print "La muchedumbre va de aquí para allá ocupada en sus asuntos o se detiene a participar en mil y una conversaciones. "; else print "A esta hora el foro está desierto y muy tranquilo. "; "Calle arriba se vuelve a la plaza del barrio y más abajo está el mercado. Por el este se puede seguir hasta salir de la ciudad."; ], descripcion_larga [; print "El foro local es amplio y espacioso, a pesar de estar rodeado de 'magníficos' edificios públicos y un templo: nuestros urbanistas hacen bien su trabajo.^"; if (Mensajero hasnt encendido) ! No hemos terminado la última misión print "Nuestra plaza parece tranquila y deshabitada cuando se la compara con este lugar y su concurrencia. La muchedumbre, compuesta por romanos y extranjeros casi a partes iguales, va de aquí para allá, sin pausa, ocupada en sus asuntos o se detiene a participar en mil y una conversaciones, algunas a voz en grito, farfulladas en todas las lenguas que se hablan en los mil y un rincones de nuestros dominios.^ No hay un lugar como el foro para sentir la grandeza de Roma... y su ritmo agobiante.^"; else print "A esta hora el foro está desierto y muy tranquilo: recuerda casi a nuestra plaza al amanecer, cuando Roma aún no despierta. "; "Calle arriba se vuelve a la plaza del barrio y más abajo está el mercado. Por el este se puede seguir hasta salir de la ciudad."; ], antes [; Escuchar: if (uno==0) { ! Ya entregamos correspondencia al Mensajero if (Mensajero has encendido) "El foro a esta hora está en silencio, para variar..."; else <>; } Ir: if (localizacion == self) { ! Ya entregamos correspondencia al Mensajero if (Mensajero has encendido) { if (uno==obj_s) "El mercado ya estará cerrado a estas horas y Terentia me espera dentro del templo."; else if (uno==obj_n) "Ya me gustaría ir a descansar, pero Terentia me espera dentro del templo."; else if (uno==obj_adentro) { ! Final Exitoso TerentiaFinal1.proyeccion(); if (velocidad_texto == 0) PrintPausa("^^",0); TerentiaFinal2.proyeccion(); if (velocidad_texto == 0) PrintPausa("^^",0); TerentiaFinal3.proyeccion(); ! puntuacion++ conseguido(10); banderafin = 5; rtrue; } ! Aun no hemos terminado el Acto 1 ! } else if ( (uno==obj_s) && (Medico hasnt encendido) ) ! "Tengo cosas que hacer en el barrio. Ya habrá tiempo para ir al mercado..."; } } Salidas: "Calle arriba se vuelve a la plaza del barrio y más abajo está el mercado. Por el este se puede seguir hasta salir de la ciudad."; ], al_n Plaza, arriba [;<>;], al_s Mercado, abajo [;<>;], al_e [;<>;], afuera [; if (Medico hasnt encendido) ! Aun no hemos terminado el Acto 1 "Tengo cosas que hacer en el barrio. Ya habrá tiempo para pasear por las afueras..."; else if (Sacerdotisa hasnt encendido) ! Aun no hemos hablado con Terentia "Tengo que almorzar primero. Ya habrá tiempo para pasear por las afueras..."; else if (Carro hasnt encendido) ! Aun no hemos arreglado el Carro "Es demasiado largo el trecho. Necesito un medio de transporte si quiero ir a las afueras... y volver antes de sea noche cerrada. Fuera de Roma no se está a salvo, de noche."; else if (Mensajero hasnt encendido) ! Aun no hemos iniciado el Acto 3 "Ya solo me resta subirme al carro del buhonero y partir hacia las afueras."; else "Nada me queda por hacer en las afueras: Terentia me espera dentro del templo."; ], adentro Templo ; ! PSI PSI Medico "médico" Limbo with nombre 'medico' 'galeno' 'doctor' 'maestro' 'doc' 'dr' 'md', describir [; if (Pederasta in Limbo) "En medio de la muchedumbre puedo ver al médico del barrio, seguido de cerca por su aprendiz."; else "En medio de la muchedumbre puedo ver al médico del barrio, conversando con varias personas. Su aprendiz le espera cerca, pacientemente."; ], descripcion_corta [; print "El médico es de contextura media y va vestido con sencillez y pulcritud. "; if (Pederasta in Limbo) "Su aprendiz le sigue de cerca, con aire abstraido."; else "Está conversando animadamente con varias personas, mientras su aprendiz le espera cerca, pacientemente."; ], descripcion_larga [; print "El médico es de contextura media, de facciones tranquilas y porte erguido. Va vestido con sencillez y pulcritud, sin estridencias ni pretensiones.^"; if (Pederasta in Limbo) "Algunos lo saludan al paso, y él les responde con aire afable: sus buenos oficios y prudencia le han granjeado muchos amigos, no sólo en el foro sino también en las barriadas, que suele visitar. A su falta de orgullo vil agrega, además, un don de gentes que ya me gustaría tener yo.^ Su aprendiz le sigue de cerca, con aire abstraido."; else "Está conversando animadamente con varias personas: sus buenos oficios y prudencia le han granjeado muchos amigos, no sólo en el foro sino también en las barriadas, que suele visitar. A su falta de orgullo vil agrega, además, un don de gentes que ya me gustaría tener yo.^ Su aprendiz le espera cerca, pacientemente."; ], vida [; Hablar : ! Primer contacto con el Médico if (Pederasta in Limbo) { move Ninos to Plaza; give Ninos escenario; move NinosTerraza to Terraza; move Pelota to Plaza; move Pederasta to Callejon; move PederastaTerraza to Terraza; MedicoTrato.proyeccion(1); rtrue; ! No hemos matado al Pederasta } else if (Pederasta hasnt encendido) { "El médico se vuelve a hablarme. ~¿Es que ya tienes lo que necesito, ciudadano?~^ ~La verdad, aún no...~ le respondo.^ ~Vuelve entonces cuando ya lo tengas~ retruca, para luego darme la espalda.^ Como lleva razón, mejor le dejo y me dedico a lo mío."; ! Ya matamos al Pederasta } else { ! puntuacion++; Conseguido(4); MedicoConseguido.proyeccion(1);print "^^"; PrintPausa("",0); move self to Limbo; move Aprendiz to Limbo; move Sacerdotisa to Templo; give Medico encendido; if (Daga notin Jugador) move Daga to Limbo; move Pederasta to Limbo; move PederastaTerraza to Limbo; give Guardia escenario; move Guardia to Plaza; LimpiaPantalla.proyeccion(); box " Acto 2" "" "Hora VII - prandium" "" " "; PrintPausa("",0); LimpiaPantalla.proyeccion(); <>; } ], has masculino; PSI Aprendiz "aprendiz" Limbo with nombre 'aprendiz' 'muchacho', adjetivos 'delgado', descripcion_corta "Un muchacho vestido aún más sencillamente que su maestro. Sigue atentamente al galeno, pero parece estar muy concentrado en algo que no veo por aquí...", descripcion_larga "El aprendiz del médico es un muchacho delgado, algunos años más joven que yo y va vestido aún más sencillamente que su maestro.^ Lo veo seguir a su maestro como si fuera su sombra, portando con cuidado el bolso de instrumental del galeno, aunque parece estar muy concentrado en algo que no veo por aquí...", antes [; Abrir, Cerrar, Recibir, Tocar, BuscarEn, Empujar, Tirar: <>; ], vida [; Hablar : if (Pederasta in Limbo) { print "Sería más cortes hablar primero con su maestro, así que lo saludo con la mano. "; <>; ! Le hablamos por primera vez } else if (self hasnt encendido) { give self encendido; SaludoAprendiz1.proyeccion(1); SaludoAprendiz2.proyeccion(1); SaludoAprendiz3.proyeccion(1); rtrue; } else "El muchacho está completamente abstraído y no responde a nada de lo que le digo.^^ Pobre chico..."; ], has masculino escenario recipiente transparente; PSI Muchedumbre "muchedumbre" Foro with nombre_f 'muchedumbre' 'multitud' 'persona' 'gente' 'conversacion' 'lengua', nombre_fp 'personas' 'conversaciones' 'lenguas', nombre_m 'bullicio' 'ajetreo' 'lio' 'barullo' 'ruido', nombre_mp 'romanos' 'extranjeros' 'esclavos' 'ciudadanos' 'ricos' 'pobres', descripcion_corta [; print "Decenas de personas: romanos y extranjeros, esclavos y ciudadanos, ricos y pobres."; ! Aún no hemos visto al médico y el Pederasta aún no está en juego if ( (Medico in Limbo) && (Pederasta in Limbo) && (Pederasta hasnt encendido) ){ move Aprendiz to Foro; move Medico to Foro; } if (Medico in Foro) " Entre ellos veo al médico del barrio, seguido de cerca por su aprendiz."; else " "; ], descripcion_larga [; print "La muchedumbre, compuesta por romanos y extranjeros casi a partes iguales, va de aquí para allá, sin pausa, ocupada en sus asuntos o se detiene a participar en mil y una conversaciones, algunas a voz en grito, farfulladas en todas las lenguas que se hablan en los mil y un rincones de nuestros dominios.^ Todos andan apurados, mezclándose sin orden ni concierto: romanos y extranjeros, esclavos y ciudadanos, ricos y pobres."; ! Aún no hemos visto al médico y el Pederasta aún no está en juego if ( (Medico in Limbo) && (Pederasta in Limbo) && (Pederasta hasnt encendido) ){ move Aprendiz to Foro; move Medico to Foro; } if (Medico in Foro) " Entre ellos veo al médico del barrio, seguido de cerca por su aprendiz"; else " "; ], antes [; Escuchar : "Es un lío de mil y una conversaciones, algunas a voz en grito, farfulladas en todas las lenguas que se hablan en los mil y un rincones de nuestros dominios."; ], vida [; Hablar : "Mi voz se pierde en la multitud..."; ], has femenino escenario; ! Decorados Objeto_Localidad Objeto_Localidad_Foro "Foro" with nombre 'foro', descripcion [; if (localizacion == Foro) <>; else if (localizacion == Plaza) "Calle abajo se ve el foro local, donde te enteras de qué pasa en Roma y el mundo."; else if (localizacion == Mercado) "Calle arriba se vuelve al foro local, donde te enteras de qué pasa en Roma y el mundo."; else ! En el Templo "El foro está saliendo del templo, como llamándome para volver..."; ], antes [; Salirse: if (Localizacion == Foro) <>; else "No estoy en el foro..."; Meterse, Entrar: if (Localizacion == Plaza) <>; else if (Localizacion == Templo) <>; else if (Localizacion == Mercado) <>; else ! En el Foro "Ya estoy en el Foro."; ], esta_en [; if ( (Localizacion == Plaza) || (Localizacion == Foro) || (Localizacion == Mercado) || (Localizacion == Templo) ) return true; ], has masculino escenario entrable abierto; Objeto_Escenario Objeto_Edificios_Foro "edificios publicos" Foro with nombre_mp 'edificios', adjetivos 'municipales' 'municipal' 'publicos' 'publico', descripcion "Hay varios edificios municipales o de uso público. Está la oficina de correos, el ayuntamiento local, un banco... todo de lo más pintoresco, con nuestro típico estilo romano.", antes [; Escuchar: <>; Entrar, Meterse: ! Ya entregamos correspondencia al Mensajero if (Mensajero has encendido) "A estas horas los edificios municipales ya están cerrados."; else "Hoy no tengo negocios con el estado, así que no hay necesidad."; Empujar, Tirar, Coger, Frotar : "No me dedico a mudanzas o urbanismo, caramba. Bastante tengo ya con ser romano..."; ], has masculino nombreplural escenario entrable abierto; Objeto_Escenario Objeto_Edificio_Correo "edificio de correos" Foro with nombre_f 'oficina', nombre_m 'edificio' 'correo', nombre_mp 'correos', descripcion [; print "Un edificio bajo, con gente entrando y saliendo a toda prisa"; ! Ya entregamos correspondencia al Mensajero if (Mensajero has encendido) ". A estas horas está cerrado, y nadie entra o sale del lugar."; else ": aquí se reciben y envían mensajes y paquetes a toda Roma y sus dominios."; ], antes [; Escuchar: <>; Entrar, Meterse: ! Ya entregamos correspondencia al Mensajero if (Mensajero has encendido) "A estas horas el correo ya está cerrado."; else if (Correo in Jugador) { ! ¡Intento de Traición! if (self hasnt Luz) { give self Luz; "No puedo darle el paquete de correo a un funcionario de correos. Terentia me dió instrucciones precisas de entregárselo sólo al mensajero de Tito Pomponio Atico...^^ ¿O sí puedo?^ Es tentador..."; ! ¡Traición! } else { CorreoFinalAlternativo.proyeccion(1); CorreosFinal.proyeccion(1); banderafin = 3; rtrue; } } else "Hoy no tengo nada que enviar por el correo, así que no hay necesidad."; Empujar, Tirar, Coger, Frotar : "No me dedico a mudanzas o urbanismo, caramba. Bastante tengo ya con ser romano..."; ], has masculino escenario entrable abierto; Objeto_Escenario Objeto_Edificio_Ayuntamiento "edificio del ayuntamiento" Foro with nombre 'edificio' 'ayuntamiento', adjetivos 'local', descripcion [; print "En el ayuntamiento se vigila y organiza el trabajo de mantención de los edificios y espacios de uso público de nuestro Aventino. No suele faltarles trabajo.."; ! Ya entregamos correspondencia al Mensajero if (Mensajero has encendido) ". aunque a estas horas ya está cerrado."; else "."; ], antes [; Escuchar: <>; Entrar, Meterse: ! Ya entregamos correspondencia al Mensajero if (Mensajero has encendido) "A estas horas el ayuntamiento ya está cerrado."; else "Hoy no tengo negocios con el estado, así que no hay necesidad."; Empujar, Tirar, Coger, Frotar : "No me dedico a mudanzas o urbanismo, caramba. Bastante tengo ya con ser romano..."; ], has masculino escenario entrable abierto; Objeto_Escenario Objeto_Edificio_Banco "edificio del banco" Foro with nombre 'edificio' 'banco', descripcion [; print "Un edificio adusto y de estilo aún más basto que el resto de los que lo rodean. "; ! Ya entregamos correspondencia al Mensajero if (Mensajero has encendido) "A estas horas está cerrado y se ve tan vacío como el resto del foro."; else "Por esas cosas de nuestro carácter romano, mucha gente que pasa mira al banco con la misma o más reverencia que la que les causa el templo. Pragmatismo, me temo..."; ], antes [; Escuchar: <>; Entrar, Meterse: ! Ya entregamos correspondencia al Mensajero if (Mensajero has encendido) "A estas horas el banco ya está cerrado."; else "No suelo cargar efectivo que pueda interesar a un banco, así que no hay necesidad."; Empujar, Tirar, Coger, Frotar : "No me dedico a mudanzas o urbanismo, caramba. Bastante tengo ya con ser romano..."; ], has masculino escenario entrable abierto; Objeto_Escenario Objeto_Edificio_Estilo "estilo de los edificios" Foro with nombre_m 'estilo' 'decorado' 'remate', nombre_mp 'estilo' 'decorados' 'remates', adjetivos 'tipico' 'romano' 'delicado' 'delicados' 'superior' 'superiores', descripcion "Es una construcción sencilla y robusta en la bases, con los decorados delicados en los remates superiores... cuando el dinero lo permite, claro.", antes [; Escuchar: <>; Entrar, Meterse: <>; Empujar, Tirar, Coger, Frotar : <>; ], has masculino escenario entrable abierto; Objeto_Escenario BolsoAprendiz "bolso de instrumental" Aprendiz with nombre 'bolso' 'instrumental', adjetivos 'cuero', descripcion "Es un bolso de cuero, donde su aprendiz lleva el instrumental del galeno. No abulta demasiado, y es que seguramente el resto de las herramientas de trabajo del médico han de estar en su casa.", antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has masculino; ! El Templo Habitacion Templo "El Templo" with descripcion_corta "El templo de Venus está hecho entero de mármol blanco reluciente. Pese a que afuera está el foro, aquí reina una calma y silencio sobrecogedores. Al fondo se destaca su altar.", descripcion_larga "El templo de Venus, silencioso y fresco, está hecho entero de mármol blanco: techo, piso y paredes están hechos del suave material, y lo que no está a la sombra de sus columnas reluce con una luz brillante que viene de fuera. Pese estar en el foro, y carecer de puertas que lo aislen, la calma y el silencio del lugar son sobrecogedores. Al fondo del templo se puede ver el altar de la diosa.", antes [; Escuchar: if (uno==0) <>; Salidas: "Afuera del templo está el foro."; ], afuera Foro ; ! Objetos de Puzzle Objeto_Puzzle Correo "paquete de correspondencia" Limbo with nombre_m 'paquete' 'correo', nombre_f 'correspondencia' 'carta', nombre_fp 'cartas', descripcion_corta "Es un paquete de cartas de Terentia de los Helvi, para su marido, Marco Tulio Cícero.", descripcion_larga "Es un paquete de cartas de Terentia de los Helvi, para su marido, Marco Tulio Cícero. Terentia me dió instrucciones precisas de entregárselo sólo al mensajero de Tito Pomponio Atico.", antes [; Quemar: if (otro==0) { if ( (Localizacion==Tumba) || (Antorcha in Jugador) ) <>; else print "Afortunadamente no tengo con qué quemarlo:"; } else { if (otro==Antorcha) { ! La Antorcha no está encendida if (Antorcha hasnt luz) print "Afortunadamente, la antorcha está apagada:"; else print "Sería imbécil de cuidado si lo hiciera: "; } else { print "Afortunadamente "; print (el) otro; print " no sirve para quemar nada:"; } } " dudo mucho que el mensajero o Marco Tulio Cícero pudieran leer cenizas..."; Tocar, BuscarEn, Abrir, Leer, Retorcer, Agitar, Atacar: "De ninguna manera. Es correspondencia privada."; Mostrar, Dar: if (otro == Mensajero) { ! No hemos hablado con el Mensajero aun if (Mensajero hasnt visitado) print "Mejor hablo con él primero, para estar seguro... "; <>; } else if ( (otro == Lavandera) || (otro == Guardia) || (otro == Buhonero) || (otro == Legionario) || (otro == Relevo) ) { ! ¡Intento de Traición! if (otro hasnt Luz) { give otro Luz; print "No puedo darle el paquete de correo a "; print (el) otro; ". Terentia me dió instrucciones precisas de entregárselo sólo al mensajero de Tito Pomponio Atico...^^ ¿O sí puedo?^ Es tentador..."; ! ¡Traición! } else { switch (otro) { Lavandera: CorreoFinalAlternativo.proyeccion(1); LavanderaFinal.proyeccion(1); ! puntuacion--; Conseguido(11); banderafin = 3; Guardia: CorreoFinalAlternativo.proyeccion(1); GuardiaFinal.proyeccion(1); ! puntuacion--; Conseguido(11); banderafin = 3; Buhonero: if (Carro hasnt encendido) ! Aun no hemos reparado el Carro "Creo que voy a encargarle el paquete de correo al buhonero... pero antes, debo ayudarlo a reparar el carro. Muy lejos no podría ir, de otro modo."; else { CorreoFinalAlternativo.proyeccion(1); BuhoneroFinal.proyeccion(1); ! puntuacion--; Conseguido(11); banderafin = 3; } Legionario: CorreoFinalAlternativo2.proyeccion(1); if (Legionario in ViaAppia) LegionarioFinal1.proyeccion(1); else LegionarioFinal2.proyeccion(1); LegionarioFinal3.proyeccion(1); ! puntuacion--; Conseguido(11); banderafin = 4; Relevo: CorreoFinalAlternativo2.proyeccion(1); RelevoFinal.proyeccion(1); ! puntuacion--; Conseguido(11); banderafin = 4; } rtrue; } } else { print "No puedo darle el paquete de correo "; print (al) otro; ". Terentia me dió instrucciones precisas de entregárselo sólo al mensajero de Tito Pomponio Atico..."; } Dejar, Lanzar, PonerSobre, Meter: "No puedo. Terentia me dió instrucciones precisas de entregárselo sólo al mensajero de Tito Pomponio Atico."; ], has masculino legible; ! PSI PSI Sacerdotisa "sacerdotisa" Limbo with nombre_f 'sacerdotisa' 'mujer' 'persona', adjetivos 'alta' 'delgada' 'inmovil' 'gracil', describir "La sacerdotisa está inmóvil frente al altar.", descripcion_corta "La sacerdotisa espera silenciosa e inmóvil, con los brazos reposando a los costados y vestida con una toga.", descripcion_larga "La sacerdotisa, muy alta y delgada, me observa sin decir palabra, como si tuviera todo el tiempo del mundo. No parece ni joven ni vieja, y lleva una toga como si fuera una estatua, grácil e inmóvil. Sus brazos reposan en sus costados sin adorno ni abalorio alguno. Si está calzada, no puede adivinarse: la toga cubre completamente sus pies.", antes [; Abrir, Cerrar, Recibir, Tocar, BuscarEn, Empujar, Tirar: "No me atrevo. La sacerdotisa tiene una dignidad que me es imposible no respetar..."; ], vida [; Besar, Atacar: <>; ! Recibir: ! "La sacerdotisa mueve la cabeza, diciendo ~No fue eso lo que os pedí, ciudadano.~"; Hablar: ! No hemos hablado con la sacerdotisa if (self hasnt visitado) { ! Aun no tenemos el Conejo if (Jaula notin Jugador){ ! No hemos comido aun if (Parrillero hasnt encendido) { give self visitado; SacerdotisaSaludo1.proyeccion(1); SacerdotisaSaludo2.proyeccion(1); SacerdotisaSaludo3.proyeccion(1); <>; ! Ya comimos } else { give self visitado; SacerdotisaSaludo4.proyeccion(1); SacerdotisaSaludo5.proyeccion(1); <>; } ! Ya tenemos el Conejo } else { give self visitado; SacerdotisaSaludo6.proyeccion(1); SacerdotisaSaludo2.proyeccion(1); <>; } ! Ya hablamos con la Sacerdotisa antes } else ! Aun no tenemos el Conejo ni hemos comido if ( (Jaula notin Jugador) && (Parrillero hasnt encendido) ) { "La sacerdotisa interrumpe su devoción y se vuelve a hablarme. ~¿Es que ya tienes lo que necesito, ciudadano?~^ ~La verdad, aún no...~ le respondo.^ ~Vuelve entonces cuando ya lo tengas~ retruca, para luego darme la espalda y seguir en su contemplación.^ Como lleva razón, mejor lo dejo y me dedico a lo mío."; ! Tenemos el Conejo o ya hemos comido } else { ! puntuacion++; Conseguido(6); give self encendido; ! Si lo tenemos, entregamos el Conejo a la Sacerdotisa if (Jaula in Jugador) { move Jaula to Limbo; move Conejo to Limbo; give Conejo encendido; ! Se ha sacrificado al Conejo SacerdotisaTerentia1.proyeccion(1); ! De lo contrarrio, trabajamos para a la Sacerdotisa sin más } else SacerdotisaTerentia2.proyeccion(1); move self to Limbo; move Correo to Jugador; move Rueda to Mercado; SacerdotisaTerentia3.proyeccion(1); SacerdotisaTerentia4.proyeccion(1); SacerdotisaTerentia5.proyeccion(1); SacerdotisaTerentia6.proyeccion(1);print "^^"; PrintPausa("",0); LimpiaPantalla.proyeccion(); <>; } ], has femenino recipiente transparente; ! Decorados Objeto_Localidad Objeto_Localidad_Templo "templo de venus" with nombre_m 'templo', adjetivos 'venus' 'culto', descripcion [; if (Localizacion == Templo) <>; else "El templo de Venus está hecho entero de mármol blanco y lo que no es cubierto por las sombras de las columnas reluce con una luz brillante."; ], antes [; Escuchar: <>; Salirse: if (Localizacion == Templo) <>; else "No estoy en el templo..."; Meterse, Entrar: if (Localizacion == Foro) <>; else ! En el Templo "Ya estoy dentro del templo."; ], esta_en [; if ( (Localizacion == Foro) || (Localizacion == Templo) ) return true; ], has masculino escenario entrable abierto; Objeto_Escenario Altar "altar" Templo with nombre_m 'altar' 'sacrificio' 'pie', nombre_f 'losa', nombre_fp 'huellas', adjetivos 'tallado' 'magnifico', descripcion_corta [; print "El altar está sobre un pie tallado. La losa "; ! Se ha sacrificado ya al Conejo if (Conejo has encendido) "muestra huellas de algún sacrificio reciente."; else "está impecable, como los muros y piso del templo."; ], descripcion_larga [; print "El altar, de mármol blanquísimo sin vetas, se destaca en medio de la luz al fondo del templo. La losa"; ! Se ha sacrificado ya al Conejo if (Conejo has encendido) print ", con huellas de algún sacrificio reciente"; else print ", impecable como los muros y piso del templo"; ", descansa sobre un magnífico pie tallado, que parece fundirse con el suelo del templo."; ], antes [; Orinar: "¿¡Aquí?!... jamás he estado tan molesto como para siquiera considerarlo..."; ], has masculino; Objeto_Escenario ColumnasTemplo "columnas del templo" with nombre_f 'columna' 'pilar', nombre_fp 'columnas' 'pilares', adjetivos 'marmol' 'recta' 'rectas' 'lisa' 'lisas' 'etereo' 'etereos' 'eterea' 'etereas', descripcion "Las columnas de mármol se elevan rectas, lisas, sosteniendo el techo como pilares etéreos. Será la atmósfera del lugar, pero parece que el techo flotara sobre ellas...", antes [; Frotar: <>; BuscarEn: "Aquí no se me ha perdido nada y, la verdad, aún me queda algo de respeto religioso."; Coger, Empujar, Tirar: "No me atrevo a traer desorden a este templo. Esa tarea es de la diosa, je..."; Orinar: "¿¡Aquí?!... jamás he estado tan molesto como para siquiera considerarlo..."; ], esta_en [; if ( (Localizacion == Foro) || (Localizacion == Templo) ) return true; ], has femenino nombreplural; Objeto_Escenario VetasTemplo "vetas de mármol" with nombre_f 'veta' 'direccion', nombre_fp 'vetas' 'direcciones', adjetivos 'marmol' 'larga' 'largas' 'gruesa' 'gruesas', descripcion "Son largas y gruesas, serpenteando en múltiples direcciones de manera antojadiza y... creo que estoy empezando a marearme. Normalmente no me obsesiono tanto con el mármol.", antes [; Frotar: <>; BuscarEn: "Aquí no se me ha perdido nada y, la verdad, aún me queda algo de respeto religioso."; Coger, Empujar, Tirar: "No me atrevo a traer desorden a este templo. Esa tarea es de la diosa, je..."; Orinar: "¿¡Aquí?!... jamás he estado tan molesto como para siquiera considerarlo..."; ], esta_en [; if ( (Localizacion == Foro) || (Localizacion == Templo) ) return true; ], has femenino nombreplural; Objeto_Escenario MarmolTemplo "mármol del templo" with nombre 'marmol' 'espejo', adjetivos 'blanco' 'reluciente' 'liso' 'lechoso', descripcion "El material es liso y lechoso, con algunas vetas aquí y allá. Refleja la luz casi como un espejo.", antes [; Frotar: <>; BuscarEn: "Aquí no se me ha perdido nada y, la verdad, aún me queda algo de respeto religioso."; Coger, Empujar, Tirar: "No me atrevo a traer desorden a este templo. Esa tarea es de la diosa, je..."; Orinar: "¿¡Aquí?!... jamás he estado tan molesto como para siquiera considerarlo..."; ], esta_en [; if ( (Localizacion == Foro) || (Localizacion == Templo) ) return true; ], has masculino nombreplural; Objeto_Escenario AtmosferaTemplo "atmósfera del templo" with nombre_f 'atmosfera', nombre_m 'frescor' 'silencio', adjetivos 'marmol' 'blanco' 'reluciente' 'liso' 'lechoso', descripcion "El frescor, el silencio, la luz que parece más clara y más limpia que afuera... el lugar es tan sobrecojedor que estoy tentado de dejar mi habitual pragmatismo.", antes [; Escuchar: "El silencio en el templo es casi total. Apenas se se escucha la muchedumbre del foro, estando tan cerca..."; Frotar: <>; BuscarEn: "Aquí no se me ha perdido nada y, la verdad, aún me queda algo de respeto religioso."; Coger, Empujar, Tirar: "No me atrevo a traer desorden a este templo. Esa tarea es de la diosa, je..."; ], esta_en [; if ( (Localizacion == Foro) || (Localizacion == Templo) ) return true; ], has femenino nombreplural; Objeto_Escenario Toga "Toga" Sacerdotisa with nombre 'toga' 'caida', adjetivos 'blanca' 'lisa', descripcion_corta "Es una toga aún más blanca que el mármol del templo, con una caída lisa, sin pliegues.", descripcion_larga "Es una toga aún más blanca que el mármol del templo, con una caída lisa, sin pliegues. Cubre a la sacerdotisa de tal modo que la mujer semeja a una estatua, grácil e inmóvil. Si está calzada, no puede adivinarse: la toga cubre completamente sus pies.", antes [; Quitar, Coger, Tocar, BuscarEn, Empujar, Tirar, Orinar: <>; ], has femenino; ! El Mercado Habitacion Mercado "El Mercado" with descripcion_corta [; print "En los puestos del mercado se vende (casi) toda clase de bienes y servicios. "; ! Ya recibimos del Correo de Terentia if (Sacerdotisa has encendido) { ! El Carro no está reparado if (Carro hasnt encendido) print "El buhonero se afana en su carro, mascullando imprecaciones."; else print "El buhonero está preparando su carro para marcharse."; } " Calle arriba se regresa al foro local."; ], descripcion_larga [; print "El mercado tiene una actividad que casi rivaliza con la del foro. Los clientes (y no pocos curiosos) entran, se pasean y salen del lugar a un ritmo mareador, mientras los vendedores atienden y despachan mercancías: hoy están instalados un puesto de peletería, una herrería, una parrilla y un carro de buhonero"; ! Ya recibimos del Correo de Terentia if (Sacerdotisa has encendido) { ! El Carro no está reparado if (Carro hasnt encendido) print "... que parece tener problemas, pues veo al buhonero afanándose entre imprecaciones."; else print " que su dueño está cargando, listo ya para salir."; } else print ", por lo que, a falta de verduras, hay a la venta (casi) toda clase de bienes y servicios."; " Calle arriba se regresa al foro local, y no sé que será más agotador..."; ], antes [; Escuchar: if (uno==0) <>; Comprar: if (uno == 0) <>; Comer: if (uno==0) "Para eso, tendría que hablar con el parrillero..."; Salidas: "Calle arriba se regresa al foro local."; ], al_n Foro, afuera Foro, arriba Foro ; ! Objetos de Puzzle Objeto_Puzzle Jaula "jaula" Mercado with nombre 'jaula', listarse "una jaula", descripcion [; print "Es una jaula, con un conejo pequeño adentro, "; if (self in Jugador) "pateando como loco."; else "moviéndose inquieto."; ], antes [; Cortar: if (otro==0) { if (Cuchillo in Jugador) <>; else if (Daga in Jugador) <>; else "¿Con qué?..."; } else if ( (otro == Daga) || (otro == Cuchillo) ) if (self in Jugador) <>; else "No, no... la mercancía dañana no hay quien la compre. Malo para los negocios, malo para Roma, malo para mí..."; Oler: if (self in Jugador) <>; else <>; Comprar: if (self in Mercado) <>; else "No hace falta, ya es mío."; Coger: if (self notin Jugador) "No puedo llevarlo así no más: eso ya sería robar, y hay otras maneras de conseguir las cosas, si uno es ciudadano romano, honesto... y astuto, vaya."; Dar: if (otro == Sacerdotisa) { ! No hemos hablado con la Sacerdotisa aun if (Sacerdotisa hasnt visitado) print "Mejor hablo primero con la sacerdotisa. "; <>; } else if (otro == Peletero) "Con lo que me costó conseguirlo, no pienso devolverlo."; else "No pienso desperdiciar esta vianda con esta persona..."; Tocar, Retorcer, Agitar, Atacar : "El conejo retuerce como loco, tratando de escaparse..."; PonerSobre: if (otro==Altar) "No me atrevo. Eso es privilegio de la sacerdotisa..."; else <>; Abrir, Dejar, Lanzar : "De ninguna manera, el conejo adentro escapará a perderse y nunca podré encontrarlo en Roma..."; ], has femenino escenario abrible ~abierto transparente recipiente; Objeto_Puzzle Conejo "conejo" Jaula with nombre_m 'conejo', nombre_f 'animal' 'bestia', adjetivos 'enjaulado', listarse "un conejo, pateando en su jaula", descripcion_corta [; print "Es un conejo pequeño, "; if (self in Jugador) print "que patea como loco "; else print "moviéndose inquieto "; "en su jaula."; ], descripcion_larga [; print "Es un conejo pequeño, blanco y gordo. Se nota que el peletero escoge sus animales por la calidad de las pieles... y su rentabilidad. Se podrían hacer varias aplicaciones o una prenda pequeña sólo con este conejo. El animal, probablemente, sabe de qué va todo ello "; if (self in Jugador) print ", ya que patea como loco "; else print "y no para de moverse inquieto "; "en su jaula."; ], antes [; Cortar: if (otro==0) { if (Cuchillo in Jugador) <>; else if (Daga in Jugador) <>; else "¿Con qué?..."; } else if ( (otro == Daga) || (otro == Cuchillo) ) { if (self in Jugador) "¿Con lo que me costó conseguirlo? No, no... es para la sacerdotisa..."; else "No, no... la mercancía dañana no hay quien la compre. Malo para los negocios, malo para Roma, malo para mí..."; } Oler: if (Jaula in Jugador) "Tiene un olor muy suave y cálido. El peletero sabe cuidar su mercancía y el conejo no es la excepción."; else <>; Comprar: if (Jaula in Mercado) <>; else "No hace falta, ya es mío."; Coger, Dar, Sacar: if (Jaula notin Jugador) "No puedo llevarlo así no más: eso ya sería robar, y hay otras maneras de conseguir las cosas, si uno es ciudadano romano, honesto... y astuto, vaya."; else if (Sacerdotisa in Localizacion) <>; else <>; Tocar, Retorcer, Agitar, Atacar : "Se retuerce como loco, tratando de escaparse..."; PonerSobre: if (otro==Altar) "No me atrevo. Eso es privilegio de la sacerdotisa..."; else <>; Abrir, Dejar, Lanzar : "De ninguna manera, el conejo escapará a perderse y nunca podré encontrarlo en Roma..."; ], has masculino escenario; Objeto_Puzzle Cuchillo "cuchillo carnicero" Mercado with nombre 'filo' 'cuchillo', adjetivos 'carnicero' 'gran' 'grande' 'afilado' 'metal' 'metalico' 'brillante' 'brillando', descripcion_corta "Es un cuchillo carnicero.", descripcion_larga "Es un cuchillo carnicero, de buena calidad. Es más bien grande, y la única forma de llevarlo en público es con mucho cuidado... ", antes [; Comprar: if (self in Mercado) <>; else if (self in Limbo) <>; else "No hace falta, ya es mío."; Coger: if (self notin Jugador) "No puedo llevarlo así no más: eso ya sería robar, y hay otras maneras de conseguir las cosas, si uno es ciudadano romano, honesto... y astuto, vaya."; Dar: if (otro == Peletero) { ! No hemos hablado con el Peletero aun if (Peletero hasnt visitado) print "Mejor hablo primero con el peletero. "; <>; } else if (otro == Herrero) "Con lo que me costó conseguirlo, no pienso devolverlo."; else "No puedo entregarle esto a cualquiera..."; Tocar : "¡Ouch! Está bien afilado..."; Dejar : "No conviene dejarlo en cualquier sitio. Las cosas suelen perderse fácilmente, en Roma..."; ], has masculino escenario; Objeto_Puzzle Dinero "dinero" Limbo with nombre_m 'dinero' 'sestercio', nombre_mp 'sestercios', nombre_f 'moneda', nombre_fp 'monedas', adjetivos 'romano' 'romana' 'romanas' 'redondo' 'redonda' 'redondas' 'metal' 'opaco' 'opaca' 'opacos' 'opacas', listarse "un poco de dinero", descripcion_corta "Es un poco de dinero romano.", descripcion_larga "Es un poco de dinero: unas cuantas monedas romanas de metal, redondas y opacas, de a sestercios.", antes [; Oler: "No gracias: quizás por cuántas manos ha pasado y en qué lugares ha estado..."; Dar: if (otro == Peletero) <>; else if (otro == Herrero) <>; else if (otro == Parrillero) <>; else "No puedo entregarle esto a cualquiera... ¡es dinero!"; Dejar, Lanzar, PonerSobre : "No conviene dejarlo en cualquier sitio. El dinero se va rápido, en Roma..."; ], has masculino; Objeto_Puzzle Carro "carro del buhonero" Mercado with nombre_m 'carro' 'carromato' 'costado' 'vehiculo' 'puesto', nombre_f 'superificie', nombre_mp 'costados', adjetivos 'buhonero', descripcion_corta [; print "El carro de buhonero está repleto de mil y uno objetos: telas, ollas y un sin fin de artículos curiosos, todo colgando por los tres costados."; ! Aun no hemos hablado con Terentia if (Sacerdotisa hasnt encendido) " El buhonero vigila atento su mercancía, mientras despacha a clientes y curiosos."; ! Aun no reparamos el Carro else if (Carro hasnt encendido){ print " Una rueda del carro está mal encajada."; ! Ya sacamos el Madero del Carro if (Madero in Mercado) { print " Al lado del carro hay un madero"; ! Hemos apoyado el Madero sobre la Piedra if (Madero has encendido) print ", apoyado sobre una piedra grande."; else print "."; } ! Hemos arrastrado la Piedra cerca del carro, pero no le hemos puesto el madero if ( (Piedra has encendido) && (Madero hasnt encendido) ) " Aquí cerca está la piedra grande."; else " "; ! Ya reparamos el Carr } else " El buhonero está revisando que su mercancía esté bien estivada en el carro."; ], descripcion_larga [; print "El carro de buhonero es casi un mercado en sí mismo. Está repleto de mil y uno objetos, entre los que se destacan varias telas, algunas ollas, todo revuelto en un sin fin de artículos curiosos. La mercadería cuelga por los tres costados del carro, y casi no hay espacio en su superficie en que no haya algo exhibido para la venta."; ! Aun no hemos hablado con Terentia if (Sacerdotisa hasnt encendido) " El buhonero vigila atento su mercancía, mientras despacha a clientes y curiosos."; ! Aun no reparamos el Carro else if (Carro hasnt encendido){ print " Por desgracia, una rueda del carro está mal encajada, por lo que a menos que se repare, el carro no irá muy lejos."; ! Ya sacamos el Madero del Carro if (Madero in Mercado) { print " Al lado del carro está el madero que encontré"; ! Hemos apoyado el Madero sobre la Piedra if (Madero has encendido) print ", apoyado sobre una piedra grande."; else print "."; } if ( (Piedra has encendido) && (Madero hasnt encendido) ) ! Hemos arrastrado la Piedra cerca del carro, pero no le hemos puesto el madero " Aquí cerca está la piedra grande, que arrastré con no poco esfuerzo."; else " "; ! Ya reparamos el Carro } else " El buhonero está revisando que su mercancía esté bien estivada en el carro."; ], antes [; Oler : <>; Vender, Comprar: <>; Abrir, BuscarEn: if (Sacerdotisa hasnt encendido) ! Aun no hemos hablado con Terentia "El buhonero estára ocupado despachando clientes, pero si me intereso demasiado por el carro, el buhonero se va ocupar de mí y me va a despachar rapidito..."; else if (self hasnt encendido) { if (self hasnt visitado){ give self visitado; print "Mejor hablo primero con el buhonero, no sea que se moleste. "; <>; } else if (Madero in Limbo) { move Madero to Mercado; "Hay demasiado que ver en el carro, pero algo llama mi atención: un madero largo y robusto...^^ ...que me recuerda de pronto las admoniciones de mi preceptor: Arquímedes, decía mi anciano maestro, descrubrió que con un brazo resistente y un buen punto de apoyo, podía moverse cualquier cosa...^^ Con cuidado, deposito el madero, bastante pesado, cerca del carro. Ahora necesito algo para apoyarlo..."; } else "No hace falta, ya encontré lo que necesito..."; } else "No hace falta, ya está en buen estado."; Empujar, Tirar, Coger: if (Sacerdotisa hasnt encendido) ! Aun no hemos hablado con Terentia "El buhonero estára ocupado despachando clientes, pero si me intereso demasiado por el carro, el buhonero se va ocupar de mí y me va a despachar rapidito..."; else if (self hasnt encendido) { if (self hasnt visitado) { give self visitado; print "Mejor hablo primero con el buhonero, no sea que se moleste. "; <>; } else if (Madero in Limbo) "Intento levantar el carro con el buhonero, pero nuestras fuerzas no bastan. El carro pesa demasiado..."; else <>; } else "No hace falta, ya está en buen estado."; Meterse, Subir: if (Sacerdotisa hasnt encendido) ! Aun no hemos hablado con Terentia "El buhonero estára ocupado despachando clientes, pero si me intereso demasiado por el carro, el buhonero se va ocupar de mí y me va a despachar rapidito..."; else if (self hasnt encendido) { if (self hasnt visitado) { give self visitado; print "Mejor hablo primero con el buhonero, no sea que se moleste. "; <>; } else "El carro no va a volverse más liviano con mi peso, y sólo dificultaría la reparación..."; } else { SubirCarro.proyeccion(); if (velocidad_texto == 0) PrintPausa("^^",0); ! Parar ambientador universal PararDaemon(ambientador_universal); LimpiaPantalla.proyeccion(); box " Acto 3" "" "Hora IX - cena" "" ""; PrintPausa("",0); LimpiaPantalla.proyeccion(); move self to Limbo; JugadorA(ViaAppia); rtrue; } ], has masculino escenario entrable soporte; Objeto_Puzzle Piedra "piedra grande" Mercado with nombre 'piedra', adjetivos 'grande' 'plantada', describir [ ; print "Hay una piedra grande"; ! Hemos arrastrado la Piedra cerca del carro if (self has encendido) " bastante cerca del carro del buhonero."; else " plantada en el suelo, en un extremo del mercado."; ], descripcion_corta [ ; print "Es una piedra grande"; ! Hemos arrastrado la Piedra cerca del carro if (self has encendido) ". Está bastante cerca del carro."; else ", plantada en el suelo, en un extremo del mercado."; ], descripcion_larga [ ; print "Es una piedra grande"; ! Hemos arrastrado la Piedra cerca del carro if (self has encendido) ". Está bastante cerca del carro... gracias a mis esfuerzos, por cierto."; else ", plantada en el suelo, en un extremo del mercado. Probablemente alguien la usó para atar un animal de tiro."; ], antes [; Coger : ! Aun no sacamos el Madero del Carro if (Madero in Limbo) "¿Para qué? Me canso..."; else "No puedo levantarla, pesa demasiado. Podría tratar de empujarla..."; Tirar : ! Aun no sacamos el Madero del Carro if (Madero in Limbo) "¿Para qué? Me canso..."; else "Intento tirar de ella, pero no logro asirla bien."; Empujar, EmpujarDir, Transferir : ! Aun no sacamos el Madero del Carro if (Madero in Limbo) "¿Para qué? Me canso..."; ! No hemos arrastrado la Piedra cerca del carro else if (self hasnt encendido) { if ( (otro==0) || (otro==Madero) || (otro==Carro) || (otro==Buhonero) || (otro==Rueda) ) { give self encendido; "Con no pocos trabajos, logro empujarla hasta acercarla al carro."; } else "Empujando la piedra hacia allá no conseguiré gran cosa..."; } else "No hace falta empujar más, ya la tengo donde quiero..."; ], has femenino soporte; Objeto_Puzzle Madero "madero largo" Limbo with nombre_m 'madero' 'liston' 'brazo', nombre_f 'madera' 'tabla' 'viga', adjetivos 'largo' 'larga' 'robusto' 'robusta', descripcion_corta [ ; print "Es un madero largo."; ! Hemos apoyado el Madero sobre la Piedra if (self has encendido) " Está apoyado sobre la piedra, cerca del carro del buhonero."; else " Está acá al lado del carro del buhonero."; ], descripcion_larga [ ; print "Es un madero largo y robusto, "; ! No hemos reparado el Carro aun if (Carro hasnt encendido) print "ideal para lo que tengo en mente con el carro: Arquímedes y todo eso..."; else print " y me vino de perillas para reparar el carro: Arquímedes era un genio."; ! Hemos apoyado el Madero sobre la Piedra if (self has encendido) " Está apoyado sobre la piedra, cerca del carro del buhonero."; else " Está acá al lado del carro del buhonero."; ], antes [; Coger: "No puedo: a duras penas consigo moverlo un poco."; PonerSobre : if (otro~=Piedra){ print "No creo que sirva ponerlo sobre "; print_ret (el) otro; ! No hemos arrastrado la Piedra cerca del carro } else if (Piedra hasnt encendido) "Podría ponerlo sobre la piedra, pero está lejos del carro..."; ! No hemos apoyado el Madero sobre la Piedra else if (self hasnt encendido) { give self encendido; "Con esfuerzo, logro poner el madero sobre la piedra. Ya solo basta con empujar el madero para levantar el carro y estamos..."; } else "No hace falta, ya está sobre la piedra"; Meterse, Subir, Empujar : ! No hemos arrastrado la Piedra cerca del carro if (Piedra hasnt encendido) "Podría usar la piedra para apoyar el madero primero, pero la piedra está lejos del carro..."; ! No hemos apoyado el Madero sobre la Piedra else if (self hasnt encendido) "Primero tengo que poner el madero sobre la piedra..."; ! No hemos reparado el Carro else if (Carro hasnt encendido) { ! puntuacion++; Conseguido(7); give Carro encendido; "Con la piedra bajo el madero, hago palanca en el carro, levantándolo lo suficiente para que el buhonero enderece la rueda del carro. Concluido el trabajo, el buhonero me dedica una franca sonrisa de gratitud, haciéndome un ademán para que suba al carro."; } else "No hace falta empujar más, ya he reparado el carro..."; ], has masculino escenario soporte entrable; ! PSI PSI Peletero "peletero" Mercado with nombre 'dependiente' 'peletero' 'hombre' 'vendedor' 'comerciante', descripcion_corta "El peletero está ocupado despachando clientes... y manteniendo sus animales bajo control.", descripcion_larga "El peletero, fiel a su ocupacion, trabaja como bestia, sin resuello o pausa. De alguna manera consigue despachar clientes y mantener sus animales a raya, pero cuesta imaginar que alguna vez descanse... o coma... o duerma... ", vida [; Hablar: ! No hemos hablado con el Peletero antes if (self hasnt visitado) { give self visitado; print "~¿Como va la venta, patrón?~ lo saludo.^ ~Bien~ responde sonriendo ~Todo el que quiera ropa que no se caiga a pedazos recurre a mí tarde o temprano. Tengo a la venta pieles y cueros bien tratados, así como animales vivos para descuerar aquí mismo"; if (Cuchillo notin Jugador) " ...aunque para las pieles recién desolladas me está faltando un cuchillo carnicero.~^ ~¿Y qué haces, en este caso?~ le pregunto.^ ~Pues, algunos animales los vendo vivos, como este bonito conejo~ responde con una mueca."; ! Tenemos el Cuchillo, pero no tenemos Dinero if (Dinero notin Jugador) " ...aunque para las pieles recién desolladas, como la de este conejo, me está faltando un cuchillo carnicero.~^ ~¿Y has podido conseguir alguno?~ le pregunto.^ ~No, pero ese que traes tu tan poco disimuladamente se ve bien...~ concluye, con una sonrisa."; ! No tenemos Cuchillo, pero tenemos Dinero else ". Por ejemplo, tengo aquí un lindo conejo.~"; ! Ya hablamos con el Peletero antes, pero no hemos hablado con la Sacerdotisa } else if (Sacerdotisa hasnt visitado) "El peletero me mira y me pregunta ~¿Puedo ofrecerte algo?~^ Miro la mercancía a la venta... pero voy bien vestido y no me gusta la carne cruda.^ ~Lo siento~, respondo, ~pero no quiero comprar nada, por ahora.~^ Apurado, el peletero me mira y espeta ~Vuelve entonces cuando te interese algo y deja de molestar...~"; else { ! Ya hablamos con la Sacerdotisa ! Compramos el Conejo con Dinero if (Dinero in Jugador) { ! puntuacion++; Conseguido(5); move Dinero to Limbo; move Jaula to Jugador; give Jaula ~escenario; give Conejo ~escenario; "~Quisiera comprar el conejo, por favor.~^ El peletero, sin pestañear, menciona el precio... que es la cantidad que llevo, menos mal.^ Le entrego el dinero y recibo al conejo dentro de su jaula."; ! Trocamos el Cuchillo por el Conejo } else if (Cuchillo in Jugador) { ! puntuacion++; Conseguido(5); move Cuchillo to Limbo; move Jaula to Jugador; give Jaula ~escenario; give Conejo ~escenario; give Pieles encendido; "~Creo que podemos hacer negocios.~^ El peletero, sonriendo, mira el cuchillo y se frota las manos.^ Le entrego el cuchillo y recibo al conejo dentro de su jaula."; } else "Apenas distrayendose, el peletero me mira y me suelta un ~Vuelve cuando tengas dinero o algo que me interese cambiar...~"; } ], has masculino escenario; PSI Herrero "herrero" Mercado with nombre 'dependiente' 'herrero' 'hombre' 'vendedor' 'tipo' 'comerciante', adjetivos 'grande' 'rudo', descripcion_corta "El herrero muestra su selección de herramientas a la venta... y algunos cuchillos en un mostrador fuera del alcance de la mano.", descripcion_larga "El herrero es un tipo grande y rudo y no me extrañaría en lo más mínimo si tuviera pasado militar o de gladiador: tiene un físico que hace pensar en yunque, martillo y forja... que no se ven por parte alguna. El herrero muestra su selección de herramientas a la venta a los pocos clientes que no se sienten intimidados por el vendedor o atarídos por algunos cuchillos en un mostrador fuera del alcance de la mano.", vida [; Hablar: ! No hemos hablado con el Herrero antes if (self hasnt visitado) { give self visitado; print "~¿Como va la venta, maestro?~ lo saludo.^ ~Lenta~, responde con desagrado. ~La gente últimamente está cuidando mejor sus utensilios, así que ahora me dedico a la venta, compra o cambio de herramientas... para ir tirando~ termina, algo mosqueado."; if (Daga notin Jugador) ""; ! Tenemos la Daga y ya hemos hablado con el Peletero else if ( (Peletero has visitado) && (Parrillero hasnt visitado) ) "^~¿Y has podido conseguir algo?~ le pregunto.^ ~No, pero esa daga que tu crees que llevas disimuladamente, yo te la cambiaría con gusto por un bonito cuchillo carnicero~ concluye, con una sonrisa."; else "^~¿Y has podido conseguir algo?~ le pregunto.^ ~No, pero esa daga que tu crees que llevas disimuladamente, yo te la compraría con gusto~ concluye, con una sonrisa."; ! Ya hablamos con el Herrero antes y aun no hemos hablado con la Sacerdotisa } else if (Sacerdotisa hasnt visitado) { ! Tenemos la Daga y ya hablamos con el Parrillero antes -> vendemos la Daga if ( (Daga in Jugador) && (Parrillero has visitado) ) { move Daga to Limbo; give Daga abierto; move Dinero to Jugador; give Dinero ~escenario; "~Creo que podemos hacer negocios.~^ El herrero, con desconfianza, mira la daga con cuidado.^ Luego, se da vuelta y me entrega un poco de dinero a cambio de la daga."; ! No tenemos ni Dinero ni Daga } else if (Dinero notin Jugador) "El herrero me mira y me pregunta ~¿Puedo ofrecerte algo?~^ Miro la mercancía que vende el herrero... pero de momento no tengo dinero ni nada para cambiar.^ ~Lo siento~, respondo, ~pero sólo estoy mirando.~ ^Hosco, el herrero me mira y musita un ~Entonces no molestes y vuelve cuando tengas con qué hacer negocios...~"; ! Tenemos Dinero, pero no hemos hablado con la Sacerdotisa aun else "El herrero me mira y me pregunta ~¿Puedo ofrecerte algo?~^ Miro la mercancía que vende el herrero... pero de momento no hay nada que me interese.^ ~Lo siento~, respondo, ~pero no quiero comprar nada, por ahora.~^ Hosco, el herrero me mira y musita un ~Vuelve entonces cuando te interese algo y deja de molestar...~"; ! Ya hablamos con la Sacerdotisa } else { ! Si tenemos Dinero if (Dinero in Jugador) { ! Si hemos hablado con el Peletero, compramos el Cuchillo if (Peletero has visitado) { move Dinero to Limbo; move Cuchillo to Jugador; give Cuchillo ~escenario; give Cuchillos encendido; "~Quisiera comprar un cuchillo carnicero, por favor.~^ El herrero se da vuelta y enseguida me entrega un cuchillo carnicero a cambio del dinero."; ! Tenemos Dinero, pero no hemos hablado con la Sacerdotisa aun } else "El herrero me mira y me pregunta ~¿Puedo ofrecerte algo?~^ Miro la mercancía que vende el herrero... pero de momento no hay nada que me interese.^ ~Lo siento~, respondo, ~pero no quiero comprar nada, por ahora.~^ Hosco, el herrero me mira y musita un ~Vuelve entonces cuando te interese algo y deja de molestar...~"; ! Si tenemos la Daga } else if (Daga in Jugador) { ! Si hemos hablado con el Peletero, trocamos la Daga por el Cuchillo if (Peletero has visitado) { move Daga to Limbo; give Daga abierto; move Cuchillo to Jugador; give Cuchillo ~escenario; give Cuchillos encendido; "~Creo que podemos hacer negocios.~^ El herrero, con desconfianza, mira la daga con cuidado.^ Luego, se da vuelta y me entrega un cuchillo carnicero a cambio de la daga."; ! Si hablamos con el Parrillero antes, vendemos la Daga } else if (Parrillero has visitado) { move Daga to Limbo; give Daga abierto; move Dinero to Jugador; give Dinero ~escenario; "~Creo que podemos hacer negocios.~^ El herrero, con desconfianza, mira la daga con cuidado.^ Luego, se da vuelta y me entrega un poco de dinero a cambio de la daga."; } else ! De otro modo, no queremos hacer negocio "El herrero me mira y me pregunta ~¿Puedo ofrecerte algo?~^ Miro la mercancía que vende el herrero... pero de momento no hay nada que me interese.^ ~Lo siento~, respondo, ~pero no quiero comprar nada, por ahora.~^ Hosco, el herrero me mira y musita un ~Vuelve entonces cuando te interese algo y deja de molestar...~"; } else "Hosco, el herrero me mira y musita un ~Vuelve cuando tengas dinero o algo nuevo para vender o cambiar...~"; } ], has masculino escenario; PSI Parrillero "parrillero" Mercado with nombre 'dependiente' 'parrillero' 'hombre' 'vendedor' 'maestro ' 'asador' 'comerciante', adjetivos 'gordo' 'pulcro', descripcion_corta "El parrillero vigila atento su mercancía, mientras despacha a clientes... y voltea con tino las carnes para evitar que se quemen.", descripcion_larga "El parrillero, un tipo gordo pero pulcro hasta la afectación, atiende su parrilla sin apenas distraerse para despachar a sus clientes, que llegan atraídos por las carnes que este maestro asador voltea siempre atento y con tino, para evitar que se quemen.", vida [; Hablar: ! No hemos hablado con el Parrillero antes if (self hasnt visitado) { give self visitado; "~¿Como va la venta?~ lo saludo.^ ~Estupenda~ responde entusiasmado ~La gente que no viene a comprarme directamente, al poco rato termina por hacerlo. Esta mercancía se vende sola~ concluye riendo."; ! Ya hablamos con el Parrillero antes } else ! Compramos comida if (Dinero in Jugador) { ! No hemos hablado con la Sacerdotisa if (Sacerdotisa hasnt visitado) { move Dinero to Limbo; give self encendido; "~Quisiera comprar algo de comer, por favor.~^ El parrillero recibe el dinero y me da a cambio un par de trozos de carne, que devoro de inmediato: muy sazonados y calientes, me han venido muy bien."; } else "Tengo que conseguir un conejo para la Sacerdotisa, no gastar el dinero 'comiendo afuera'..."; ! No tenemos Dinero } else "Algo apurado, el parrillero me mira y me despacha con un ~Vuelve cuando tengas algo de dinero...~"; ], has masculino escenario; PSI Buhonero "buhonero" Mercado with nombre 'dependiente' 'vendedor' 'buhonero' 'hombre' 'comerciante', adjetivos 'delgado', descripcion_corta [; ! Aun no hemos hablado con Terentia if (Sacerdotisa hasnt encendido) "El buhonero vigila atento su mercancía, mientras despacha a clientes y curiosos."; ! El Carro no está reparado else if (Carro hasnt encendido) "El buhonero está forcejeando con su carro."; else "El buhonero se dispone a salir, revisando que su mercancía esté bien estivada en su carro."; ], descripcion_larga[; print "El buhonero es un tipo delgado, siempre con una sonrisa en la boca"; ! Aun no hemos hablado con Terentia if (Sacerdotisa hasnt encendido) ", especialmente ahora que está despachando a clientes, alentando curiosos y manteniendo medio ojo en el resto de su mercancía."; ! El Carro no está reparado else if (Carro hasnt encendido) ", salvo ahora que está forcejeando con su carro."; else ". El buhonero se dispone a salir, revisando que su mercancía esté bien estivada en su carro."; ], vida [; Hablar: ! Aun no hemos hablado con Terentia if (Sacerdotisa hasnt encendido) "El buhonero está demasiado ocupado con sus clientes y a mí sólo me hace un gesto vago."; ! El Carro no está reparado else if (Carro hasnt encendido) { if (self hasnt visitado){ give self visitado; give Carro visitado; "El pobre tipo está tratando aún de levantar el carro cuando nota mi presencia.^ ~Ya no estoy atendiendo, ciudadano~ me espeta resoplando.^ ~Así veo~ respondo. ~¿No os gustaría que os echara una mano?~^ El buhonero levanta la vista. ~¿A cambio de qué, exactamente?~ me pregunta.^ Sonrío. ~Sólo quiero transporte hasta la Vía Appia, cerca del Arco Druso.~^ Sin dejar de esforzarse, el buhonero asiente, diciendo ~Si me ayudas con el carro, te has ganado el pasaje...~^ ~¿Contáis con herramientas?~ pregunto^ El buhonero farfulla ~Buscad en el carro como os plazca...~ y sigue forcejeando."; } else "Aun esforzándose con su carro, el buhonero me responde ~Me ayudarías más si me hablaras menos, amigo.~"; } else "Mientras revisa la mercadería, el buhonero me responde ~Sube cuando estés listo, amigo.~"; ], has masculino escenario; PSI Clientes "clientes" Mercado with nombre_f 'vecina' 'muchedumbre' 'multitud' 'persona' 'gente', nombre_fp 'vecinas' 'personas', nombre_m 'cliente' 'curioso' 'ciudadano' 'vecino' 'bullicio' 'ajetreo' 'grito', nombre_mp 'curiosos' 'romanos' 'extranjeros' 'ciudadanos' 'clientes' 'vecinos' 'gritos', adjetivos 'barrio', descripcion_corta "Decenas de personas que entran, se pasean y salen del mercado a un ritmo mareador, mientras los vendedores se las ingenian para atenderlos.", descripcion_larga "Decenas de personas: romanos y extranjeros, esclavos y ciudadanos... de mi barrio en su mayoría, pues no se ven ni muy ricos ni particularmente pobres. Los clientes (y alguinos curiosos) entran, se pasean y salen del mercado a un ritmo mareador, mientras los vendedores se las ingenian para ignorar a ninguno y atenderlos a todos.", antes [; Escuchar : "Entre los gritos de los vendedores y los de los clientes, apenas puedo escuchar lo que estoy pensando..."; ], vida [; Hablar : "Mi voz se pierde en la multitud..."; ], has masculino nombreplural escenario; ! Decorados Objeto_Localidad Objeto_Localidad_Mercado "mercado" with nombre 'mercado', descripcion [; if (Localizacion == Mercado) <>; else "Calle abajo está el mercado, donde se pueden hacer negocios de día."; ], antes [; Salirse: if (Localizacion == Mercado) <>; else "No estoy en el mercado..."; Meterse, Entrar: if (Localizacion == Foro) <>; else ! En el Mercado "Ya estoy en el mercado."; ], esta_en [; if ( (Localizacion == Foro) || (Localizacion == Mercado) ) return true; ], has masculino escenario entrable abierto; Objeto_Escenario Puestos "puestos" Mercado with nombre_mp 'puestos' 'dependientes' 'vendedores' 'comerciantes', nombre_fp 'tiendas', descripcion "Hoy están instalados un puesto de peletería, una herrería, una parrilla y un carro de buhonero.", antes [; Coger, Comprar, Vender, Escuchar: "¿En cuál puesto en particular?..."; ], has masculino nombreplural; Objeto_Escenario Peleteria "peletería" Mercado with nombre_m 'puesto', nombre_f 'tienda' 'peleteria', descripcion_corta "En el puesto del peletero hay a la venta pieles, cueros y algunos animales vivos para llevar... o descuerar ahí mismo.", descripcion_larga "El puesto del peletero parece una mezcla azarosa de tienda y zoológico ambulante, con varios animales vivos en jaulas para llevar... o descuerar ahí mismo, ya que se exhiben al lado de muestras del oficio del peletero: hermosas pieles y cueros curtidos con primor.", antes [; Escuchar: <>; Vender, Comprar: <>; ], has masculino; Objeto_Escenario Pieles "pieles de la peletería" Mercado with nombre_m 'cuero' 'curtido' 'ruido', nombre_mp 'animales' 'cueros' 'servicios', nombre_f 'piel' 'mercancia' 'mercaderia', nombre_fp 'jaulas' 'bestias' 'pieles' 'mercancias' 'mercaderias', adjetivos 'hermosa' 'hermoso' 'hermosas' 'hermosos' 'vivo' 'vivos', descripcion_corta [; print "Son varias pieles, cueros y algunos animales vivos para llevar."; if (Jaula in Mercado) " Entre los animales puedo ver un conejo enjaulado."; else " "; ], descripcion_larga [; print "Son varias pieles, cueros, exhibidos junto a algunos animales vivos para llevar. Los animales meten un ruido de los mil demonios, pero en el mercado, si uno se aleja unos pasos, apenas se nota."; if (Jaula in Mercado) { print " Entre los animales puedo ver un conejo enjaulado"; ! Ya hemos hablado con la Sacerdotisa if (Sacerdotisa has visitado) ": estoy de suerte..."; else "."; } else " "; ], antes [; Escuchar: "Los animales meten un ruido de los mil demonios, pero en el mercado, si uno se aleja unos pasos, apenas se nota."; Cortar: if (otro==0) { if (Cuchillo in Jugador) <>; else if (Daga in Jugador) <>; else "¿Con qué?..."; } else if ( (otro == Daga) || (otro == Cuchillo) ) "No, no... la mercancía dañana no hay quien la compre. Malo para los negocios, malo para Roma, malo para mí..."; Oler : "Todo tiene un olor muy suave y cálido. El peletero sabe cuidar su mercancía."; Coger, BuscarEn: ! Aun no tenemos el Conejo if (Jaula in Mercado) "No puedo llevarlos así no más: eso ya sería robar, y hay otras maneras de conseguir las cosas, si uno es ciudadano romano, honesto... y astuto, vaya."; else "No hace falta, ya pude hacerme con el conejo..."; Comprar: if (Jaula in Mercado) <>; else "Ya voy bien vestido, gracias..."; ], has femenino nombreplural; Objeto_Escenario Herreria "herrería" Mercado with nombre_m 'puesto', nombre_f 'tienda' 'herreria', descripcion_corta "En el puesto del herrero se venden, reparan y fabrican toda clase de herramientas. Tiene una selección de cuchillos impresionante.", descripcion_larga "En el puesto del herrero se venden, reparan y fabrican toda clase de herramientas. Aparte de algunas herramientas domésticas, tiene una selección de cuchillos impresionante, exhibidos en un mostrador fuera del alcance de la mano.", antes [; Vender, Comprar: <>; ], has femenino; Objeto_Escenario Cuchillos "cuchillos del herrero" Mercado with nombre_mp 'filos' 'cuchillos' 'servicios', nombre_f 'herramienta' 'mercancia' 'mercaderia', nombre_fp 'herramientas' 'mercancias' 'mercaderias', adjetivos 'afilados' 'metal' 'metalicos' 'brillantes' 'brillando' 'domestica' 'domesticas', descripcion_corta [; print "Son varios cuchillos de diversos usos."; if (Cuchillo in Mercado) " Entre ellos puedo ver un cuchillo carnicero."; else rtrue; ], descripcion_larga [; print "Son varios cuchillos metálicos, todos bien afilados por lo que puede verse, brillantes a la luz del día."; if (Cuchillo in Mercado) { print " Entre ellos puedo ver un cuchillo carnicero"; ! Ya hemos hablado con el Peletero y aun no tenemos el Conejo if ( (Peletero has visitado) && (Jaula in Mercado) ) ": estoy de suerte..."; else "."; } else rtrue; ], antes [; Cortar: if (otro==0) { if (Cuchillo in Jugador) <>; else if (Daga in Jugador) <>; else "¿Con qué?..."; } else if ( (otro == Daga) || (otro == Cuchillo) ) "No, no... la mercancía dañana no hay quien la compre. Malo para los negocios, malo para Roma, malo para mí..."; Coger, BuscarEn: ! No hemos comprado el Cuchillo aun if (self hasnt encendido) "No puedo llevarlos así no más: eso ya sería robar, y hay otras maneras de conseguir las cosas, si uno es ciudadano romano, honesto... y astuto, vaya."; else "No hace falta, ya pude hacerme con uno..."; Comprar: if (Cuchillo in Mercado) <>; else "Ya no me hacen falta..."; ], has masculino nombreplural; Objeto_Escenario Baratijas "artículos del buhonero" Mercado with nombre_m 'articulo' 'objeto', nombre_mp 'articulos' 'objetos' 'servicios', nombre_f 'carga' 'tela' 'olla' 'mercancia' 'mercaderia' 'herramienta', nombre_fp 'telas' 'ollas' 'mercancias' 'mercaderias' 'herramientas', adjetivos 'buhonero' 'curioso' 'curiosos', descripcion_corta "Hay mil y uno objetos: telas, ollas y un sin fin de artículos curiosos, todo colgando por los tres costados.", descripcion_larga "Hay mil y uno objetos entre los que se destacan varias telas, algunas ollas, todo revuelto en un sin fin de artículos curiosos. La mercadería cuelga por los tres costados del carro, y casi no hay espacio en su superficie en que no haya algo exhibido para la venta.", antes [; Cortar: if (otro==0) { if (Cuchillo in Jugador) <>; else if (Daga in Jugador) <>; else "¿Con qué?..."; } else if ( (otro == Daga) || (otro == Cuchillo) ) "No, no... la mercancía dañana no hay quien la compre. Malo para los negocios, malo para Roma, malo para mí..."; Oler : "Indescriptible: demasiadas cosas, todas muy distintas, es una barahunda casi sofocante..."; Coger, BuscarEn: <>; Comprar: ! Aun no hemos reparado el Carro if (Carro hasnt encendido) <>; else "Ya conseguí pasaje..."; ], despues [; Examinar: ! Ya tenemos permiso del Buhonero y aun no buscamos en el Carro if ( (Buhonero has visitado) && (self hasnt encendido) ) { give self encendido; <>; } ], has masculino nombreplural; Objeto_Escenario Rueda "rueda del carro" Limbo with nombre 'rueda', adjetivos 'carro' 'mal' 'bien' 'encajada', descripcion [; ! Aun no reparamos el Carro if (Carro hasnt encendido){ print "La rueda del carro está mal encajada."; ! Ya sacamos el Madero del Carro if (Madero in Mercado) { print " Al lado del carro hay un madero"; ! Hemos apoyado el Madero sobre la Piedra if (Madero has encendido) print ", apoyado sobre una piedra grande."; else print "."; } ! Hemos arrastrado la Piedra cerca del carro, pero no le hemos puesto el madero if ( (Piedra has encendido) && (Madero hasnt encendido) ) " Aquí cerca está la piedra grande."; else " "; ! Ya reparamos el Carro } else "La rueda del carro está bien encajada."; ], antes [; Abrir, BuscarEn: <>; Empujar, Tirar, Coger: <>; Meterse, Subir: <>; ], has femenino escenario; Objeto_Escenario Parrilla "parrilla" Mercado with nombre_m 'puesto' 'corte', nombre_mp 'cortes' 'servicios', nombre_f 'tienda' 'parrilla' 'carne' 'mercancia' 'mercaderia', nombre_fp 'carnes' 'mercancias' 'mercaderias', adjetivos 'grueso' 'gruesos' 'delgado' 'delgados' 'hecho' 'hechos' 'crudo' 'crudos', descripcion "El parrillero tiene un surtido amplio de toda clase de carnes, en cortes gruesos o delgados, bien hechos o más crudos, según el gusto de la clientela.", antes [; Escuchar: "Las carnes crepitan y sisean que da gusto... y hambre."; Cortar: if (otro==0) { if (Cuchillo in Jugador) <>; else if (Daga in Jugador) <>; else "¿Con qué?..."; } else if ( (otro == Daga) || (otro == Cuchillo) ) <>; Coger: ! Ya hemos comido (Conejo o en la Parrilla) if ( (Parrillero has encendido) || (Conejo has encendido) ) "No hace falta, ya estoy satisfecho..."; else "No puedo llevarlo así no más: eso ya sería robar, y hay otras maneras de conseguir las cosas, si uno es ciudadano romano, honesto... y astuto, vaya."; BuscarEn, Tocar: ! Ya hemos comido (Conejo o en la Parrilla) if ( (Parrillero has encendido) || (Conejo has encendido) ) "No hace falta, ya estoy satisfecho..."; else "Ni de broma: todo parece estar extremadamente caliente."; Oler: ! Ya hemos comido (Conejo o en la Parrilla) if ( (Parrillero has encendido) || (Conejo has encendido) ) "Ya me dí el gusto, para qué torturarme más..."; else "El olor es demasiado tentador. Si sigo oliendo, será de masoquista..."; Probar: ! Ya hemos comido (Conejo o en la Parrilla) if ( (Parrillero has encendido) || (Conejo has encendido) ) "No hace falta, ya estoy satisfecho..."; else "No creo que el parrillero lo apruebe, je. Mejor le pregunto antes... "; Vender, Comprar: <>; ], has femenino; ! Afueras de Roma ! La Vía Appia Habitacion ViaAppia "Las Afueras de Roma" with descripcion_corta "Desde las afueras, nuestra carretera se despliega majestuosa e interminablemente larga y recta... y bastante solitaria, a estas horas. Hacia el sur se llega al Arco de Druso. Por el oeste se entra de nuevo en Roma, mientras que por el norte se puede visitar la tumba de los Escipiones.", descripcion_larga [; print "Desde las afueras, nuestra carretera se despliega majestuosa, sólida, estable e interminablemente larga y recta.... como nos gustaría que fuera Roma, por cierto. La verdad sea dicha, este triunvirato que estamos padeciendo nos parece vaticinar que nuestra Vía Appia puede llegar a sobrevivir a la propia Roma, pero, en fin...^ A esta hora no veo tráfico alguno"; if (self hasnt visitado) print " y el carro del buhonero ya se perdió en la distancia"; ", por lo que, cosa rara, tengo la Gran Vía casi solo para mí.^ Hacia el sur se llega al Arco de Druso. Por el oeste se entra de nuevo en Roma, mientras que por el norte se puede visitar la tumba de los Escipiones."; ], antes [; Escuchar: if (uno==0) "El lugar está en silencio, a estas horas."; Salidas: "Hacia el sur se llega al Arco de Druso. Por el oeste se entra de nuevo en Roma mientras que por el norte se puede visitar la tumba de los Escipiones."; ], al_o [;<>;], adentro [; if (Correo in Jugador) "Aun no he cumplido con el encargo de Terentia. No puedo volver así..."; else "El camino es muy poco seguro a estas horas. Necesito protección..."; ], al_s ArcoDruso, abajo ArcoDruso, afuera ArcoDruso, al_n Tumba ; ! PSI PSI Legionario "legionario" ViaAppia with nombre_m 'legionario' 'guardia' 'guarda' 'soldado' 'centinela' 'hombre', adjetivos 'romano', describir [; ! No hemos traido relevo if (self in ViaAppia) "Un legionario monta guardia a la vera del camino."; else "El legionario espera sentado junto al arco."; ], descripcion_corta "Es un soldado romano, esbelto y fornido, vestido con su armadura, con su espada de servicio al cinto.", descripcion_larga [; print "Es un soldado romano, esbelto y fornido, vestido con su armadura, sin distición de rango alguna a la vista. Luce su espada de servicio al cinto y no parece que lleve otras armas. "; ! No hemos traido relevo if (self hasnt encendido) print "Se lo ve un tanto aburrido,"; else print "Parece distraído,"; " pero no se le escapa detalle. Seguro."; ], antes [; Abrir, Cerrar, Recibir, Tocar, BuscarEn, Empujar, Tirar: <>; ], vida [; Atacar : "Mala idea.^ Yo entreno frecuentemente, en casa recibí lecciones de artes marciales, y sé la diferencia entre una escoba y una espada... pero un miembro activo (o uno retirado, da igual) de la Legión Romana daría cuenta de mí sin apenas esforzarse..."; Hablar : ! No hemos traido relevo if (self in ViaAppia) { ! Aun no nos entrega el Bastón if (Baston in Limbo) { move Baston to Jugador; LegionarioSaludo1.proyeccion(1); LegionarioSaludo2.proyeccion(1); rtrue; } else "~No me puedo distraer más, ciudadano. Ve por el relevo, mejor...~"; } "~¿A qué esperas que no hablas con ese tipo?~ me espeta."; ], has masculino recipiente transparente; ! Objetos de Puzzle Objeto_Puzzle Baston "bastón de mando" Limbo with nombre_m 'baston' 'pedernal' 'extremo' 'testigo' 'relieve' 'texto' 'santo' 'rango' 'spqr' 'liv' 'cii', nombre_f 'punta' 'inscripcion' 'letra' 'palabra' 'sena' 'consigna' 'identificacion', nombre_fp 'letras' 'palabras', adjetivos 'bajo' 'mando' 'madera' 'personal', ! Desambiguación de nombre parse_nombre [ w wn_ori n n_adj hay_de; wn_ori = np; ! guardamos el número de palabra actual ! Probamos primero si el jugador ha tecleado "santo y seña", tal cual if (SiguientePalabra() == 'santo' && SiguientePalabra() == 'y//' && SiguientePalabra()=='sena') { return 3; } else { ! No es 'santo y seña', volvemos hacia atrás en la cadena de parsing ! y probamos con los nombres especificados en name_xx y adjetivos ! como lo haría la librería np = wn_ori; w = SiguientePalabra(); ! Primero los nombres, siguiendo el orden natural while ( PalabraEnPropiedad(w, self, nombre_m) || PalabraEnPropiedad(w, self, nombre_f) || PalabraEnPropiedad(w, self, nombre_mp) || PalabraEnPropiedad(w, self, nombre_fp) ){ n++; w = SiguientePalabra(); } ! Y al final los adjetivos ! Interceptamos 'de', pero sólo si va seguido de al menos un adjetivo if (w == 'de') { hay_de = 1; w = SiguientePalabra(); } while (PalabraEnPropiedad(w, self, adjetivos)) { n_adj++; w = SiguientePalabra(); } if (n_adj) n_adj = n_adj + hay_de; return n + n_adj; } ], descripcion_corta "Es un bastón de mando de madera. Tiene una punta de pedernal en un extremo y una inscripción en relieve.", descripcion_larga "Es un bastón de mando de madera, usado como consigna o identificación por los legionarios que están realizando servicios especiales. Tiene una punta de pedernal en un extremo y una inscripción de rango personal en relieve.", antes [; Leer: "En la madera están inscritas las letras ~SPQR~ seguido de ~LIV CII MI CII I~. El legionario que me dió esto es:^ Miembro de la cuarta legión consular...^ En la segunda cohorte...^ De la primera manípula...^ En la segunda centuria...^ Actuando en capacidad de Inmune: policía militar, lo más probable, habido cómo nos conocimos y los tiempos que corren en Roma..."; Tocar: if ( (otro==Objeto_Piso) || (otro==obj_abajo) ) <>; else if (otro==Objeto_Pared) <>; else "El bastón es bastante duro y da un ruido seco al tacto."; Mostrar, Dar: if (otro == Relevo) { ! No hemos hablado con el Relevo aun if (Relevo hasnt visitado) print "Mejor hablo con él primero. Lo veo... tenso. "; <>; } else "El legionario me mira como si tratara con un niño y me dice, con paciencia ~No es para mí, ciudadano, es para mi re - le - vo, que está al nor - te, en la tum - ba de los Es - ci - pio - nes...~^^ Luego, me devuelve el bastón, me da unas palmaditas en el hombro...^^ ...y yo me siento como el Senador por el Distrito de Estulticia."; ; Lanzar: if (otro == Relevo) <>; else <>; Dejar: "Si no se lo entrego al relevo del legionario, voy listo con la ayuda del soldado..."; ], has masculino legible; ! Decorado Objeto_Localidad Objeto_Localidad_ViaAppia "las afueras de roma" with nombre_fp 'afueras', adjetivos 'roma', descripcion [; if (localizacion == ViaAppia) <>; else if (localizacion == Tumba) "Al sur se ven las afueras de Roma, cerca del inicio de nuestra Vía Appia."; else ! En el Arco Druso "Al norte se ven las afueras de Roma, cerca del comienzo de nuestra Vía Appia."; ], antes [; Salirse: if (Localizacion == ViaAppia) <>; else "No estoy al comienzo de la Vía Appia..."; Meterse, Entrar: if (Localizacion == Tumba) <>; else if (Localizacion == ArcoDruso) <>; else ! En la Via Appia "Ya estoy al comienzo de la Vía Appia."; ], esta_en [; if ( (Localizacion == ViaAppia) || (Localizacion == ArcoDruso) || (Localizacion == Tumba) ) return true; ], has femenino escenario entrable abierto; Objeto_Escenario ArmaduraLegionario "armadura" Legionario with nombre 'armadura' 'coraza', adjetivos 'flexible' 'acero' 'cuero' 'metal', descripcion "Es una coraza flexible de bandas de acero, con una túnica por debajo y un faldón de tiras de cuero. No muy elegante, pero resistente a los golpes y las heridas punzantes. Entrenar a un legionario sale caro para que luego sea herido por cualquier estupidez ¿saben?", antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has femenino; Objeto_Escenario EspadaLegionario "espada" Legionario with nombre_f 'espada' 'hoja', nombre_m 'gladius' 'filo' 'doble' 'servicio', adjetivos 'afilada' 'recta' 'ancha' 'acero' 'metal', descripcion "Es una gladius, de hoja de acero recta y ancha, de doble filo. Está envainada y eso es, de entrada, muy tranquilizador.", antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has femenino; Objeto_Escenario BandasAceroLegionario "bandas de acero" Legionario with nombre_f 'banda', nombre_fp 'bandas', adjetivos 'acero' 'metal', descripcion "Son bandas de acero, hechas con cuidado para poder darles forma sin que pierdan solidez. Se requiere un herrero con experiencia para hacer una o para repararla... así que la legión siempre tiene herreros entre sus miembros.", antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has femenino nombreplural; Objeto_Escenario TirasCueroLegionario "tiras de cuero" Legionario with nombre_f 'tira', nombre_fp 'tiras', adjetivos 'cuero', descripcion "Las tiras de cuero están intercaladas a lo ancho de la cintura del soldado, protegiéndolo por delante y por detrás.", antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has femenino nombreplural; Decorado_Ampliado Decorado_Legionario Legionario with describir 'vaina' "La vaina de cuero para la espada cuelga al costado derecho de la armadura." G_FEMENINO 'tunica' "Una túnica para vestir bajo la armadura. El acero es un poco duro contra la piel..." G_FEMENINO 'cinto' "El cinto ciñe el faldón del legionario y permite colgar la espada." G_MASCULINO 'faldon' "Está compuesto por varias tiras de cuero, y protege las piernas sin impedir la movilidad." G_MASCULINO, antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], ; Class Objeto_Escenario_Camino class Objeto_Escenario with esta_en [; if ( (localizacion == ViaAppia) || (localizacion == ArcoDruso) || (localizacion == Tumba) ) return true; ], antes [; Coger: <>; Quemar: <>; Tocar: if (otro==0) <>; else <>; BuscarEn: <>; Frotar: <>; ]; Objeto_Escenario_Camino Camino "camino" with nombre_m 'camino' 'inicio', nombre_f 'gran' 'via' 'calle' 'carretera' 'calzada' 'gravilla' 'appia', adjetivos 'romana' 'romano' 'solida' 'solido' 'lisa' 'liso', descripcion_corta "Nuestra carretera es una calzada de calidad, sólida y de superficie lisa. Tiene canales de drenaje a ambos lados y andenes para transeúntes.", descripcion_larga "Nuestra carretera es una calzada de calidad, con una sólida capa de piedra y cemento sobre una capa de gravilla. Su superficie es tan lisa que no se pueden distinguir las junturas. Tiene canales de drenaje a ambos lados y andenes para transeúntes.", antes [; Salirse: <>; Meterse, Entrar: <>; ], has masculino; Objeto_Escenario_Camino SuperficieCamino "superficie" with nombre 'superficie' 'capa', descripcion "Es una sólida capa de piedra y cemento sobre una capa de gravilla. Es tan lisa que no se pueden distinguir las junturas.", has femenino; Objeto_Escenario_Camino PiedrasCamino "piedras del camino" with nombre_f 'piedra' 'roca', nombre_fp 'piedras' 'rocas', adjetivos 'río' 'solidas' 'solida' 'duras' 'dura' 'camino', descripcion "Una piedra de río, cortada con maestría por algún cantero.", has femenino nombreplural; Objeto_Escenario_Camino CementoCamino "cemento" with nombre 'cemento', adjetivos 'duro' 'solido', descripcion "No sé de qué estará hecho, pero es duro como la piedra.", has masculino; Objeto_Escenario_Camino CanalesCamino "canales de drenaje" with nombre_m 'canal' 'drenaje' 'zurco' 'lado' 'costado', nombre_mp 'canales' 'zurcos' 'lados' 'costados', adjetivos 'angostos' 'angosto' 'paralelo' 'paralelos', descripcion "Son zurcos angostos que corren paralelos a la carretera y que recolectan el agua de las lluvias.", has masculino nombreplural; Objeto_Escenario_Camino AndenesCamino "andenes de transeuntes" with nombre_m 'anden' 'transeunte' 'costado' 'servicio' 'lado' 'costado', nombre_mp 'andenes' 'transeuntes' 'costados' 'lados' 'costados', nombre_f 'area', adjetivos 'gravilla', descripcion "Hechos de gravilla, van por los costados de la carretera. Se usan especialmente para despejar el paso, cuando el tráfico de carros está muy pesado. También sirven de área de servicio en caso de dificultades o accidentes. El buhonero debe saber de ello...", has masculino nombreplural; ! La Tumba de los Escipiones ! La entrada a la tumba Habitacion Tumba "Tumba de los Escipiones" with descripcion_corta "La tumba es un hermoso e imponente monumento, con su fachada principal orientada al noreste. Hay tres arcos: uno al oeste, otro al este y otro al medio, que parece descender a la obscuridad. Por el sur se vuelve a las afueras de Roma, cerca del inicio de la Vía Appia.", descripcion_larga "La tumba es un hermoso e imponente monumento, con su fachada principal orientada al noreste. La construcción descansa sobre un podio y está bordeada por varias cornisas, en las cuales lucen tres arcos hechos de sillares: uno al oeste, otro al este y otro al medio, que parece descender a la obscuridad. Toda la base está casi completamente cubierta por frescos... pero palidece al compararla con la parte superior de la fachada, con una vista tripartita, semicolumnas y tres nichos que alojan unas hermosas estatuas.^ Si alguien me enterrara aquí, sería por error: esta tumba es sin duda para los grandes de Roma.^ Por el sur se vuelve a las afueras de Roma, cerca del inicio de la Vía Appia.", antes [; Escuchar: if (uno==0) "El lugar está en absoluto silencio."; Ir: if (localizacion == self) { if (uno==obj_abajo) { ! La Antorcha está apagada if (Antorcha hasnt luz) "No se ve mucho para abajo. Sería arriesgado bajar así a oscuras..."; ! La Antorcha está en el Muro else if (Antorcha notin Jugador) { "Desde la pared, la antorcha ilumina los primeros escalones, pero se ve que es un descenso largo. Será mejor coger primero la antorcha..."; ! Bajamos por primera vez } else if (Hipogeo has luz) { print "Con cuidado voy descendiendo los escalones. Parece que llevo caminando varios minutos cuando llego a un suelo nivelado.^"; give Hipogeo ~luz; <>; } ! Nos vamos del lugar sin devolver la Antorcha a su lugar } else if ( (uno==obj_s) && (Antorcha in Jugador) ) { print "No puedo irme de aqui con la antorcha. Es de la tumba y si me la llevo sería lo mismo que dejarla cerrada. "; move Antorcha to Tumba; ! La Antorcha está encendida if (Antorcha has luz) { give Antorcha ~luz; print "Antes de salir, apago primero la antorcha en el suelo, y luego la dejo"; } else print "Antes de salir, dejo la antorcha"; print " colgando de la pared, cerca de la entrada del medio.^"; <>; } } Salidas: "Hay tres arcos para entrar a la tumba: uno al oeste, otro al este y otro al medio, que parece descender. Por el sur se vuelve a las afueras de Roma, cerca del inicio de la Vía Appia."; ], adentro [; "¿Por cual de las tres entradas? ¿ Al oeste, al este o hacia abajo?"; ], al_e Frescos, al_o [; print "Cruzo el arco... y al andar unos pocos pasos me encuentro con un muro ciego.^ Un bonito adorno, pero no me lleva a parte alguna. Mejor regreso...^"; <>; ], al_n [;<>;], abajo Hipogeo, al_s ViaAppia, afuera [;<>;] ; ! Objetos de Puzzle Objeto_Puzzle Antorcha "antorcha de madera" Tumba with nombre_f 'antorcha' 'tea' 'llama', nombre_fp 'llamas', nombre_m 'fuego', adjetivos 'madera', describir [; print "Una antorcha "; ! Encendida if (self has luz) "encendida cuelga de la pared, iluminando la entrada del medio."; else "cuelga de la pared, cerca de la entrada del medio."; ], listarse [; print "una antorcha, "; ! Encendida if (self has luz) print "alumbrando bastante..."; else print "apagada"; rtrue; ], descripcion_corta [; print "Una antorcha de madera"; if (self in Tumba) print " cuelga de la pared, cerca de la entrada del medio"; ! Encendida if (self has luz) ". Alumbra bastante y permite avanzar seguro."; else "."; ], descripcion_larga [; print "Una antorcha de madera"; if (self in Tumba) print " cuelga de la pared, cerca de la entrada del medio, para uso de quienes visiten los niveles inferiores de la tumba"; ! Encendida if (self has luz) ". Alumbra bastante y permite avanzar seguro."; else "."; ], antes [; Tocar, Quemar: if (otro~=0) { if ( (otro == Baston) || (otro==self) ) <>; else { print (El) otro; " no sirve para quemar nada..."; } } else if (Baston in Jugador) <>; else "¿Con qué?...."; Encender: if (Baston notin Jugador) "¿Con qué?...."; ! No encendida else if (self hasnt luz) { give self luz; print "Golpeando la "; if (Jugador in Frescos) print "antorcha"; else print "pared"; " con la punta de pedernal del bastón, enciendo la antorcha."; } else "Ya está encendida..."; Apagar: ! No encendida if (self hasnt luz) "Tendría que encenderla primero..."; else if (self in Jugador) <>; else "Tendría que cogerla primero..."; Lanzar: if (otro == Relevo) <>; else <>; Dejar, Dar: if (otro == Relevo) "No parece buena idea. Mejor retengo la mía, no sea que al legionario se le ocurra apagar ambas y abandonarme o algo peor..."; else if (localizacion == Tumba) { move self to Tumba; ! Encendida if (self has luz) { give self ~luz; print "Apago la antorcha en el suelo, y luego la dejo"; } else print "Dejo la antorcha"; " colgando de la pared, cerca de la entrada del medio."; } else if (localizacion == Hipogeo) "Mejor que no. La luz ya es demasiado escasa como para contar sólo con la del legionario..."; else "Mejor que no. Si la dejo caer, me quedaré a oscuras."; ], has femenino; ! Decorado Objeto_Localidad Objeto_Localidad_Tumba "entrada a la tumba de los escipiones" with nombre_f 'tumba' 'fachada' 'construccion' 'principal' 'entrada', nombre_m 'monumento', nombre_mp 'escipiones', descripcion [; if (localizacion == Tumba) <>; else if (localizacion == Hipogeo) <>; else "La tumba es un hermoso e imponente monumento, con su fachada principal orientada al noreste. Si avanzara un poco al norte podría verla con más detalle..."; ], antes [; Salirse: if ( (Localizacion == Tumba) || (Localizacion == Hipogeo) ) <>; else "No estoy en la tumba..."; Meterse, Entrar: if (Localizacion == Tumba) <>; else if (Localizacion == Hipogeo) <>; else <>; ], esta_en [; if ( (Localizacion == Tumba) || (Localizacion == ViaAppia) || (Localizacion == Hipogeo) ) return true; ], has femenino escenario entrable abierto; !Clase para las escalas de la tumba Class Objeto_Escala_Piedra class Objeto_Escala with adjetivos 'piedra'; Objeto_Escala_Piedra EscaleraTumba "escalera descendente" Tumba with adjetivos 'descendiente' 'descendente', descripcion [; print "Es una escala de piedra."; if (Antorcha hasnt luz) " No se ve mucho para abajo. Sería arriesgado bajar así a oscuras..."; else if (Antorcha notin Jugador) " Desde la pared, la antorcha ilumina los primeros escalones aquí cerca, pero se ve que es un descenso largo. Será mejor coger primero la antorcha..."; else " Se ven los primeros escalones aquí cerca con claridad, pero el resto está en penumbras..."; ]; Objeto_Escenario PodioTumba "podio" Tumba with nombre_m 'podio', nombre_f 'base' 'plataforma', adjetivos 'enorme', descripcion "El podio es una enorme plataforma que sostiene toda la construcción. Está bordeado por varias cornisas. Toda la base está casi completamente cubierta por frescos... pero la parte superior es mucho más hermosa aun.", has masculino; Objeto_Escenario FrescosTumba "frescos" Tumba with nombre_m 'fresco' 'soldado', nombre_mp 'frescos' 'soldados', nombre_f 'escena' 'guerra' 'expresion' 'faccion', nombre_fp 'escenas' 'expresiones' 'facciones', descripcion "Los frescos cubren casi toda la base, mostrando escenas de guerra con muchos soldados, todos con expresiones y facciones similares. Será el parecido de familia, je...", antes [; Quemar: <>; ], has masculino nombreplural; Objeto_Escenario CornisasTumba "cornisas" Tumba with nombre_f 'cornisa', nombre_fp 'cornisas', descripcion "Las cornisas bordean todo el podio, sobresaliendo en su parte más alta. En las cornisas se lucen tres arcos hechos de sillares.", has femenino nombreplural; Objeto_Escenario ArcosTumba "arcos" Tumba with nombre_mp 'arcos', nombre_fp 'entradas', descripcion "Los tres arcos, hechos de sillares, están bajo las cornisas, descansando sobre el podio. Uno de los arcos va al oeste, otro al este y otro, al medio, parece descender a la obscuridad.", antes [; Meterse : "¿Por cuál de los tres arcos? ¿El arco oeste, el arco este, o el arco del medio?"; ], has masculino nombreplural entrable; Objeto_Escenario SillaresTumba "sillares" Tumba with nombre_m 'sillar', nombre_mp 'sillares', nombre_f 'piedra', nombre_fp 'piedras', adjetivos 'enorme' 'enormes' 'solida' 'solidas' 'cuadrada' 'cuadradas' 'rectangular' 'rectangulares' 'arcos', descripcion "Los sillares de los arcos están hechos de enormes piedras cuadradas o rectangulares.", has masculino nombreplural; Objeto_Escenario ArcoOesteTumba "arco oeste" Tumba with nombre_m 'arco', nombre_f 'entrada', adjetivos 'oeste' 'weste' 'occcidental' 'izquierda' 'izquierdo', descripcion "La entrada del arco oeste está en el extremo izquierdo del podio. El arco está hecho de sillares, al igual que los otros dos arcos.", antes [; Meterse : <>; ], has masculino entrable; Objeto_Escenario ArcoEsteTumba "arco este" with nombre_m 'arco', nombre_f 'entrada', adjetivos 'este' 'oriental' 'derecha' 'derecho', descripcion "La entrada del arco este está en el extremo derecho del podio. El arco está hecho de sillares, al igual que los otros dos arcos.", antes [; Meterse, Entrar: if (Localizacion == Frescos) "Ya estoy adentro..."; else <>; ], esta_en [; if ( (Localizacion == Tumba) || (Localizacion == Frescos) ) return true; ], has masculino entrable; Objeto_Escenario ArcoMedioTumba "arco central" Tumba with nombre_m 'arco', nombre_f 'entrada', adjetivos 'norte' 'medio' 'centro' 'central' 'descendente' 'baja', descripcion "La entrada del arco del medio parece descender a la obscuridad. El arco está hecho de sillares, al igual que los otros dos arcos.", antes [; Meterse : <>; ], has masculino entrable; Objeto_Escenario ParteSuperiorTumba "parte superior" Tumba with nombre 'parte' 'superior' 'vista', adjetivos 'tripartita', descripcion "La parte superior de la fachada tiene una vista tripartita, adornada con semicolumnas y tres nichos que alojan unas hermosas estatuas.", has femenino; Objeto_Escenario SemicolumnasTumba "semicolumnas" Tumba with nombre_f 'semicolumna' 'columna' 'semi', nombre_fp 'semicolumnas' 'columnas', nombre_m 'adorno', nombre_mp 'adornos', adjetivos 'recta' 'rectas' 'lisa' 'lisas', descripcion "Las semicolumnas se elevan rectas y lisas, sosteniendo la parte superior de la fachada por los extremos y entre los nichos.", has femenino nombreplural; Objeto_Escenario NichosTumba "nichos" Tumba with nombre_m 'adorno' 'nicho' 'hueco' 'semicircular' 'semi' 'circular', nombre_mp 'adornos' 'nichos' 'huecos' 'semicirculares' 'circulares', descripcion "Cada uno de los nichos está construido como hueco semicircular en la parte superior de la fachada. Cada nicho tiene su propia estatua.", has masculino nombreplural; Objeto_Escenario EstatuasTumba "estatuas" Tumba with nombre_fp 'estatuas', nombre_mp 'adornos', adjetivos 'hermosas', descripcion "Las estatuas corresponden a Escipión el Africano, su hermano Escipión el Asiático y al poeta Ennio.", has femenino nombreplural; Objeto_Escenario EstatuaAfricanoTumba "estatua de Escipión el Africano" Tumba with nombre_f 'estatua' 'expresion', nombre_m 'adorno' 'escipion' 'africano' 'hermano', nombre_mp 'hermanos', adjetivos 'hermosa' 'afable' 'mayor', descripcion "La estatua de Escipión el Africano tiene la misma expresión afable que tuvo en vida: el escultor supo reflejar con maestría su carácter benévolo, pese a su manifiesta grandeza: fue el único general romano capaz de derrotar a Aníbal. Él mismo solía decir que actuaba bajo la protección de los dioses y sin embargo todo ello nunca se le subió a la cabeza...", has femenino; Objeto_Escenario EstatuaAsiaticoTumba "estatua de Escipión el Asiático" Tumba with nombre_f 'estatua', nombre_m 'adorno' 'escipion' 'asiatico' 'hermano', nombre_mp 'hermanos', adjetivos 'hermosa' 'menor', descripcion "La estatua de Escipión el Asiático mantiene el parecido con su hermano mayor, pero está ejecutada con menor maestría que la del Africano. Nada nuevo, ya que, siendo el Asiático un militar y político razonablemente capaz, vivó siempre a la sombra de un hombre demasiado grande. Para peor, el Africano le brindó su apoyo fraterno, y Roma, entonces mucho más exigente con sus autoridades que ahora, solía cobrárselo a menudo al Asiático, que no siempre estuvo a la altura de tales auspicios...", has femenino; Objeto_Escenario EstatuaEnnioTumba "estatua del poeta Ennio" Tumba with nombre_f 'estatua', nombre_m 'adorno' 'poeta' 'ennio', adjetivos 'hermosa', descripcion "La estatua del poeta Ennio refleja sin lugar a dudad sus orígenes griegos. Se dice que fue un buen amigo del Africano al que, agradecido, fue introduciendo en la cultura griega. En todo caso, Ennio siempre procuró adaptar su obra al gusto romano, y contribuyó a la consolidación de nuestra poesía romana, especialmente la épica... o así decía mi anciano preceptor...", has femenino; ! La Sala de los Frescos Habitacion Frescos "Sala de los Frescos" with descripcion_corta "Una hermosa sala cuadrada, despejada y limpia. En sus muros se ven unos hermosos frescos. Por el oeste se regresa a la entrada de la tumba.", descripcion_larga "Una hermosa sala cuadrada, despejada de muebles u obstáculos. El suelo es liso, está muy limpio y las paredes... son impresionantes. Los frescos de afuera parecen de aficionados si se los compara con los que adornan estos muros.^ Roma está llena de sorpresas y esta habitación ~vacía~ es sin duda una de ellas.^ Por el oeste se regresa a la entrada de la tumba.", antes [; Escuchar: if (uno==0) "El lugar está en absoluto silencio."; Salidas: "Por el oeste se regresa a la entrada de la tumba."; ], al_o Tumba, afuera Tumba ; ! Decorado Objeto_Localidad Objeto_Localidad_Frescos "sala de los frescos" Frescos with nombre 'sala', descripcion [;<>;], antes [; Salirse: <>; Meterse, Entrar: "Ya estoy dentro de la sala..."; ], has femenino escenario entrable abierto; Objeto_Escenario FrescosFrescos "frescos" Frescos with nombre_m 'fresco' 'combate' 'trabajo', nombre_mp 'frescos' 'combates', nombre_f 'pintura' 'escena' 'guerra' 'pelea' 'lucha' 'batalla' 'zama', nombre_fp 'pinturas' 'escenas' 'peleas' 'luchas', adjetivos 'hermosos', descripcion_corta "Los frescos cubren todas las paredes, mostrando escenas de guerra... pero el trabajo tiene detalles mucho más acabados que los de afuera, que parecen de aficionados si se los compara con los que lucen estos muros.", descripcion_larga "La escenas de guerra en los frescos son impresionantes... y si no me equivoco, corresponden a la primera fase de la Batalla de Zama, donde Escipión se ganó su apodo de ~Africano~. Se ven los elefantes de Aníbal, la caballería romana, la caballería numida (en ambos bandos) y los soldados romanos chocando con los cartagineses, peleando fieramente aunque sin desórdenes... todavía. Las cosas cambiaron, poco después, y Aníbal fue derrotado con contundencia.^ Mi anciano preceptor no desperdició su tiempo conmigo, parece...", antes [; Quemar: <>; ], has femenino nombreplural; Objeto_Escenario AfricanoFrescos "General Escipión el Africano" Frescos with nombre_m 'nuestro' 'general' 'detalle' 'escipion' 'africano' 'soldado' 'romano', nombre_mp 'nuestros' 'detalles' 'romanos', nombre_f 'expresion', adjetivos 'tranquila', descripcion [; ! No tenemos la Anrorcha encendida if ( (Antorcha notin Jugador) || (Antorcha hasnt luz) ) "La luz del atardecer no es suficiente como para ver los detalles de los frescos."; else "La figura de Escipión el Africano se ve con claridad tras las líneas romanas. Su rostro está ejecutado con mucho detalle: se puede ver incluso que tiene una expresión tranquila, dirigiendo la batalla con seguridad."; ], antes [; Quemar: <>; ], has masculino; Objeto_Escenario AnibalFrescos "General Aníbal" Frescos with nombre_m 'general' 'detalle' 'anibal' 'soldado' 'enemigo' 'cartagines' 'preocupacion' 'miedo', nombre_mp 'detalles' 'enemigos' 'cartaginenses', nombre_f 'expresion', adjetivos 'preocupada' 'grande' 'fiero', descripcion [; ! No tenemos la Anrorcha encendida if ( (Antorcha notin Jugador) || (Antorcha hasnt luz) ) "La luz del atardecer no es suficiente como para ver los detalles de los frescos."; else "La figura del general cartaginés se ve con claridad tras las líneas enemigas. Su rostro está ejecutado también con mucho detalle: se puede ver una expresión que se está tornando en preocupada.^ El artista fué justo y no quiso degradar a este gran enemigo que, se dice, forzó a Roma a tomar el camino de grandeza y conquista que ha sido la tónica de la República estos últimos dos siglos. Aníbal aparece más grande y fiero que todos los demás soldados de la habitación... y la verdad, todavía recuerdo los cuentos de terror que mis padres me contaban sobre Aníbal, cuando me portaba mal.^ ~Anibal a las puertas~ aún se usa en Roma, cuando el desastre, la aflicción o la dificultad está ante nosotros. Puede que haya sido vencido y hasta derrotado en Zama, pero en nuestra mente ni siquiera el gran Marte está tan presente como la encarnación misma del miedo que es Aníbal el Grande.^^ Mejor miro otra cosa. Soy suficientemente honesto para reconocer que este hombre, aun en pintura, me asusta..."; ], antes [; Quemar: <>; ], has masculino; Objeto_Escenario ElefantesFrescos "elefantes de Aníbal" Frescos with nombre_m 'fresco' 'elefante' 'detalle' 'animal' 'enemigo' 'cartagines', nombre_mp 'elefantes' 'detalles' 'animales' 'enemigos' 'cartaginenses', nombre_f 'torre' 'linea' 'bestia' 'cartaginesa', nombre_fp 'torres' 'lineas' 'bestias' 'cartaginesas', adjetivos 'marfil' 'acero' 'carne' 'enorme' 'enormes' 'grande' 'grandes' 'gran' 'anibal', descripcion [; ! No tenemos la Anrorcha encendida if ( (Antorcha notin Jugador) || (Antorcha hasnt luz) ) "La luz del atardecer no es suficiente como para ver los detalles de los frescos."; else "Los elefantes están representados tal cual los percibe un soldado en combate: enormes torres de carne, marfil y acero. Si un ciudadano fuera atacado de pronto por un edificio, con vigas afiladas, y columnas pisoteándolo todo... no llegaría a sentir ni la mitad de la impresión que estas bestias causan en combate."; ], antes [; Quemar: <>; ], has masculino nombreplural; Objeto_Escenario CaballeriaRomanaFrescos "caballería romana" Frescos with nombre_m 'fresco' 'caballo' 'detalle' 'animal' 'soldado' 'flanco' 'izquierdo' 'romano', nombre_mp 'nuestros' 'caballos' 'detalles' 'animales' 'soldados' 'romanos', nombre_f 'nuestra' 'caballeria' 'linea' 'bestia', nombre_fp 'lineas' 'bestias', adjetivos 'romana' 'romanas', descripcion [; ! No tenemos la Anrorcha encendida if ( (Antorcha notin Jugador) || (Antorcha hasnt luz) ) "La luz del atardecer no es suficiente como para ver los detalles de los frescos."; else "La caballería romana está enfrentando valerosamente a la caballería numida enemiga, luchando por el flanco izquierdo de la infantería romana."; ], antes [; Quemar: <>; ], has femenino; Objeto_Escenario CaballeriaAliadaFrescos "caballería aliada" Frescos with nombre_m 'fresco' 'caballo' 'detalle' 'animal' 'soldado' 'flanco' 'derecho' 'romano' 'numida', nombre_mp 'caballos' 'detalles' 'animales' 'soldados' 'flancos' 'romanos' 'numidas', nombre_f 'caballeria' 'linea' 'bestia', nombre_fp 'lineas' 'bestias', adjetivos 'aliada' 'aliado' 'aliados', descripcion [; ! No tenemos la Anrorcha encendida if ( (Antorcha notin Jugador) || (Antorcha hasnt luz) ) "La luz del atardecer no es suficiente como para ver los detalles de los frescos."; else "La caballería numida aliada está enfrentando con arrojo a la caballería enemiga, numidas también, luchando por el flanco derecho de la infantería romana."; ], antes [; Quemar: <>; ], has femenino; Objeto_Escenario CaballeriaEnemigaFrescos "caballería enemiga" Frescos with nombre_m 'fresco' 'caballo' 'detalle' 'animal' 'soldado' 'flanco' 'derecho' 'izquierdo' 'enemigo' 'cartagines' 'numida', nombre_mp 'caballos' 'detalles' 'animales' 'soldados' 'flancos' 'enemigos' 'cartaginenses' 'numidas', nombre_f 'caballeria' 'linea' 'bestia' 'cartaginesa', nombre_fp 'lineas' 'bestias' 'cartaginesas', adjetivos 'enemiga', descripcion [; ! No tenemos la Anrorcha encendida if ( (Antorcha notin Jugador) || (Antorcha hasnt luz) ) "La luz del atardecer no es suficiente como para ver los detalles de los frescos."; else "La caballería numida está enfrentando con furia a la caballería romana por el flanco izquierdo de la infantería romana... y con odio fraticida a la caballería numida aliada, por el flanco derecho de la infantería romana."; ], antes [; Quemar: <>; ], has femenino; Objeto_Escenario InfanteriaRomanaFrescos "infanteria romana" Frescos with nombre_m 'fresco' 'detalle' 'soldado' 'espacio' 'flanco' 'centro' 'central' 'metal' 'reflejo' 'romano', nombre_mp 'nuestros' 'detalles' 'soldados' 'espacios' 'flancos' 'metales' 'reflejos' 'romanos', nombre_f 'nuestra' 'infanteria' 'linea', nombre_fp 'lineas', adjetivos 'romana' 'romanas' 'pulido' 'pulidos', descripcion [; ! No tenemos la Anrorcha encendida if ( (Antorcha notin Jugador) || (Antorcha hasnt luz) ) "La luz del atardecer no es suficiente como para ver los detalles de los frescos."; else "La infantería romana está enfrentando con valentía y resolución a los elefantes, luchando por el centro de las líneas romanas.^ Escipión, fino estratega, descubrió que si dejaba espacios entre las líneas de infantería, podía minimizar los daños inflingidos por estas enormes bestias. Más aun, el Africano ordenó a sus hombres que pulieran cualquier cosa de metal, de tal modo que el reflejo del sol deslumbrara a los animales. El artista, valga la redundancia, supo reflejar esto.^ La preocupación de Aníbal en el fresco estaba plenamente justificada: finalmente se enfrentaba a un adversario a la altura de su genio militar."; ], antes [; Quemar: <>; ], has femenino; Objeto_Escenario InfanteriaEnemigaFrescos "infanteria enemiga" Frescos with nombre_m 'fresco' 'detalle' 'soldado' 'flanco' 'centro' 'central' 'ciudadano' 'mercenario' 'veteranos' 'enemigo' 'cartagines', nombre_mp 'detalles' 'soldados' 'flancos' 'ciudadanos' 'mercenarios' 'veteranos' 'enemigos' 'cartaginenses', nombre_f 'infanteria' 'linea' 'cartaginesa', nombre_fp 'lineas' 'cartaginesas', adjetivos 'enemiga' 'detras', descripcion [; ! No tenemos la Anrorcha encendida if ( (Antorcha notin Jugador) || (Antorcha hasnt luz) ) "La luz del atardecer no es suficiente como para ver los detalles de los frescos."; else "La infantería enemiga, compuesta por ciudadanos, mercenarios y veteranos, avanza detrás de los elefantes de Aníbal, por el centro de las líneas cartaginenses. Lucharon también con valor, y la pintura así lo muestra, pero fueron diezmados a la postre por nuestros soldados."; ], antes [; Quemar: <>; ], has femenino; ! El Hipogeo Habitacion Hipogeo "El Hipogeo" with descripcion_corta "Estoy a la entrada del hipogeo, la construcción subterránea de la tumba. Subiendo se regresa a la entrada de la tumba.", descripcion_larga "Estoy a la entrada del hipogeo, la construcción subterránea de la tumba. En la semipenumbra se adivinan los pasillos y recovecos donde están los nichos y los sarcófagos de la familia. Para el visitante casual, aquello debe ser un verdadero laberinto: no me gustaría perderme ahí, pero me siento extrañamente tentado de entrar y admirar sus maravillas...^ Subiendo se regresa a la entrada de la tumba.", antes [; Escuchar: if (uno==0) "El lugar está en absoluto silencio... como una tumba, je."; Salidas: "Subiendo se regresa a la entrada de la tumba."; ], arriba [;<>;], afuera "No saco nada con salir de aquí si no vuelvo con el relevo...", adentro [; ! El Relevo está con Espada en mano if (Relevo has encendido) <>; else { print "El legionario me impide el paso con decisión.^ Con voz recia, me dice que ~No está permitido el paso ciudadano; esta es la tumba de mis ancestros y tú no eres de la familia.~^^ Por lo visto, el tema es de veras personal, y tratar de forzar el paso a un soldado de la Legión... "; <>; } ], ; ! PSI PSI Relevo "legionario" Hipogeo with nombre_m 'legionario' 'guardia' 'guarda' 'soldado' 'centinela' 'relevo' 'hombre', adjetivos 'romano', describir [; print "Un legionario "; ! Tiene la Espada en Mano if (self has encendido) print ",armado de su espada, "; "monta guardia a la entrada del hipogeo, franquéandome el paso."; ], descripcion_corta [; print "Es un soldado romano, esbelto y fornido, vestido con su armadura..."; ! Tiene la Espada en Mano if (self has encendido) " y con su espada desenvainada. Esto no pinta bien..."; ! Aun no hablamos con él else if (self hasnt visitado) " y con cara de pocos amigos."; else " y lo noto desconfiado."; ], descripcion_larga [; print "Es un soldado romano, esbelto y fornido, vestido con su armadura. "; ! Tiene la Espada en Mano if (self has encendido) " En una mano lleva, como yo, una antorcha encedida y con la otra mano aferra su espada desenvainada.^ Esto no pinta bien..."; else { print "Luce su espada de servicio al cinto. En una mano lleva, como yo, una antorcha encedida pero la otra mano está libre y muy cerca de su espada...^ Se lo ve alerta "; ! Aun no hablamos con él if (self hasnt visitado) " y con cara de pocos amigos."; else " y aunque ha cambiado un poco su gesto adusto, lo noto desconfiado."; } ], antes [; Quemar: if (otro~=0) { if (otro==Antorcha) <>; else { print (El) otro; " no sirve para quemar nada..."; } } else <>; Abrir, Cerrar, Recibir, Tocar, BuscarEn, Empujar, Tirar: <>; ], vida [; Atacar : ! No tiene la Espada en Mano if (self hasnt encendido) { give self encendido; "Mala idea.^ Yo entreno frecuentemente, en casa recibí lecciones de artes marciales, y sé la diferencia entre una escoba y una espada... pero un miembro activo (o uno retirado, para el caso) de la Legión Romana daría cuenta de mí sin apenas esforzarse.^^ El soldado toma nota de mi actitud, y para que yo tenga clara sus intenciones, desenvaina su espada..."; } else { ! Muerte if (otro == Baston) RelevoAtacoBaston.proyeccion(1); else RelevoAtacoAntorcha.proyeccion(1); RelevoMata.proyeccion(1); banderafin = 4; rtrue; } Hablar : ! Es primera vez que hablamos con él if (self hasnt visitado) { give self visitado; ! Tiene la Espada en Mano if (self has encendido) print "Será necesario ir con cuidado. Si un extraño se metiera a la tumba de mi familia, estando yo de vigilia, tampoco lo recibiría con brazos abiertos...^^ ~No era mi intención importunaros a vos o vuestra familia~ digo en tono calmo.^ La expresión del legionario no cambia en lo absoluto.^"; else print "Saludo al legionario como a su camarada. ~Os saludo, soldado de la Legión.~^ Con voz recia, me responde ~Saludos ciudadano. ¿Por qué has entrado aquí?~^^ Caigo en la cuenta de que hay algo que no estoy entendiendo bien, así que será mejor ir despacio...^^"; "~Vengo a buscarte para que releves a tu camarada en la Vía Appia.~ le digo en un tono llano y sin humor. Creo.^ ~Muestrame primero el bastón de mando de mi camarada.~ responde ~Si no lo traes, sal por donde llegaste: nada tienes que hacer aquí.~^^ Mensaje recibido: alto y claro..."; ! Ya hablamos con él } else { move Baston to Limbo; give Antorcha ~luz; move Antorcha to Tumba; move Relevo to ViaAppia; move Legionario to ArcoDruso; move Mensajero to ArcoDruso; RelevoSoldados.proyeccion(1); ! puntuacion++; Conseguido(8); JugadorA(ArcoDruso); rtrue; } ], has masculino recipiente transparente; ! Decorados Objeto_Localidad Objeto_Localidad_Hipogeo "entrada del hipogeo" Hipogeo with nombre_f 'entrada', nombre_m 'hipogeo', descripcion [;<>;], antes [; Salirse: <>; Meterse, Entrar: "Ya estoy dentro del hipogeo..."; ], has femenino escenario entrable abierto; Objeto_Escala_Piedra EscaleraHipogeo "escalera ascendente" Hipogeo with adjetivos 'ascendente', descripcion "Es una escala de piedra. Se ven los primeros escalones aquí cerca, pero el resto está en penumbras... y me consta que el ascenso es largo. No hay como subir seguro sin una antorcha."; Objeto_Escenario ArmaduraRelevo "armadura" Relevo with nombre 'armadura' 'coraza', adjetivos 'flexible' 'acero' 'cuero' 'metal', descripcion "Es una coraza flexible de bandas de acero, con una túnica por debajo y un faldón de tiras de cuero. No muy elegante, pero resistente a los golpes y las heridas punzantes. Entrenar a un legionario sale caro para que luego sea herido por cualquier estupidez ¿saben?", antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has femenino; Objeto_Escenario EspadaRelevo "espada" Relevo with nombre_f 'espada' 'hoja', nombre_m 'gladius' 'filo' 'doble' 'servicio', adjetivos 'afilada' 'recta' 'ancha' 'acero' 'metal', descripcion [; print "Es una gladius, de hoja de acero recta y ancha, de doble filo. Está "; ! El Relevo no tiene la espada en la mano if (Relevo hasnt encendido) "envainada y eso es, de entrada, muy tranquilizador."; else "desenvainada, y brilla a la luz de las antorchas.^ Esto no pinta bien..."; ], antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has femenino; Objeto_Escenario BandasAceroRelevo "bandas de acero" Relevo with nombre_f 'banda', nombre_fp 'bandas', adjetivos 'acero' 'metal', descripcion "Son bandas de acero, hechas con cuidado para poder darles forma sin que pierdan solidez. Se requiere un herrero con experiencia para hacer una o para repararla... así que la legión siempre tiene herreros entre sus miembros.", antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has femenino nombreplural; Objeto_Escenario TirasCueroRelevo "tiras de acero" Relevo with nombre_f 'tira', nombre_fp 'tiras', adjetivos 'cuero', descripcion "Las tiras de cuero están intercaladas a lo ancho de la cintura del soldado, protegiéndolo por delante y por detrás.", antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has femenino nombreplural; Objeto_Escenario AntorchaRelevo "antorcha del legionario" Relevo with nombre_f 'antorcha' 'tea' 'llama', nombre_fp 'llamas', nombre_m 'fuego', adjetivos 'madera' 'legionario' 'guardia' 'guarda' 'soldado' 'centinela' 'relevo' 'hombre' 'encendida', descripcion "La antorcha del legionario está encendida. El legionario la lleva con seguridad, alzándola para ver mejor, sin que parezca molestarle su peso.", antes [; Quemar, Encender, Apagar, Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], has femenino; Decorado_Ampliado Decorado_Relevo Relevo with describir 'vaina' "La vaina de cuero para la espada cuelga al costado derecho de la armadura." G_FEMENINO 'tunica' "Una túnica para vestir bajo la armadura. El acero es un poco duro contra la piel..." G_FEMENINO 'cinto' "El cinto ciñe el faldón del legionario y permite colgar la espada." G_MASCULINO 'faldon' "Está compuesto por varias tiras de cuero, y protege las piernas sin impedir la movilidad." G_MASCULINO, antes [; Quitar, Tocar, Tirar, Coger, BuscarEn: <>; ], ; Objeto_Escenario MaravillasHipogeo "maravillas del hipogeo" Hipogeo with nombre_f 'maravilla' 'forma' 'silueta' 'tumba', nombre_fp 'maravillas' 'formas' 'siluetas' 'tumbas', nombre_m 'algo' 'laberinto' 'nicho' 'sarcofago' 'pasillo' 'recoveco', nombre_mp 'laberintos' 'nichos' 'sarcofagos' 'pasillos' 'recovecos', adjetivos 'oscuro' 'oscuros' 'oscura' 'oscuras' 'estigio' 'estigios' 'estigia' 'estigias', descripcion_corta "Más allá de la espalda del soldado, ocultas en las sombras que nuestras antorchas no consiguen alumbrar, se insinúan las formas y siluetas de los nichos y los sarcófagos de la familia, asomándose entre los pasillos y recovecos del hipogeo.^ Si el soldado no estuviera de por medio, yo entraría, pero el soldado nota mis miradas y aunque no dice ni una sola palabra, su cuerpo grita ~vade retro~.", descripcion_larga "Más allá de la espalda del soldado, ocultas en las sombras que nuestras antorchas no consiguen alumbrar, se insinúan las formas y siluetas de los nichos y los sarcófagos de la familia, asomándose entre los pasillos y recovecos del hipogeo.^ Nada se distingue con claridad, pero lo que puede verse es inquietante y atractivo a la vez, como si recordara a fragmentos de algún sueño o pesadilla de la que no sabemos si queremos o no despertar.^ Es un verdadero laberinto estigio, y aunque no me gustaría perderme ahí dentro, siento con fuerza el deseo de entrar y admirar todo lo que se oculta en las sombras...^ Maldita sea mi obsesión romana con lo tenebroso, pero es innegable. Si el soldado no estuviera de por medio, yo entraría y me deleitaría en la sensualidad de lo oscuro, pero el soldado nota mis miradas y aprieta los puños: su cuerpo grita ~vade retro~, aunque no dice ni una sola palabra.", antes [; Escuchar: <>; Meterse, Entrar: <>; ], has femenino nombreplural; ! El Arco Druso Habitacion ArcoDruso "Arco Druso" with descripcion_corta [; print "El Arco de Druso se alza magnífico a pasos de las puertas de la ciudad."; if ( (Mensajero in Limbo) && (Litera in Limbo) ) print ".. pero es un sitio solitario: el mensajero no parece haber llegado aun."; " Por el norte se vuelve a las afueras de Roma, cerca del comienzo de la Vía Appia."; ], descripcion_larga [; print "El Arco de Druso se alza magnífico a pasos de las puertas de la ciudad. Tiene tres entradas con arcos bellamente terminados, todo construido de enormes piedras recubiertas de mármol, con hermosas columnas a los costados de cada uno de los tres arcos.^ Si alguna vez hacen pasar un acueducto por esta parte de la ciudad, este arco debiera sostener parte de su peso. Nada como la solidez y la belleza de nuestra ingeniería romana, para dar realce a un sitio."; if ( (Mensajero in Limbo) && (Litera in Limbo) ) print ".. pero de momento el lugar está algo solitario: el mensajero no parece haber llegado aun."; " Por el norte se vuelve a las afueras de Roma, cerca del comienzo de la Vía Appia."; ], antes [; Escuchar: if (uno==0) "El lugar está en silencio, a estas horas."; Ir: if ( (localizacion == self) && (uno==obj_n) ) { ! Aun no hemos entregado el Mensaje if (Legionario in ArcoDruso) "Aun no he cumplido con el encargo de Terentia. No puedo volver así..."; ! Ya entregamos el mensaje else if (Mensajero has encendido) "El camino es muy poco seguro a estas horas. Necesito protección..."; ! El Legionario no nos está acomapañando else if (self has encendido) { give self ~encendido; ! El lugar es peligroso: se ha desplegado texto alusivo if (self.cantidad <= 5) { ! No hemos hablado aun con el Legionario if (Baston in Limbo) print "El lugar no es seguro. Más vale volver con compañía, de preferencia disuasiva...^"; else print "El lugar sigue siendo peligroso. Más vale volver acompañado del legionario...^"; } <>; } } Salidas: "Por el norte se vuelve a las afueras de Roma, cerca del comienzo de la Vía Appia."; ], ! Ciclo automático para ser atacados por asaltantes si no estamos acompañados del Legionario ! o si aun no entregamos el mensaje cada_turno [; ArrancarDaemon(self); ], cantidad 7, daemon [; if ( (localizacion~=ArcoDruso) || (Legionario in Limbo) || (Legionario in ArcoDruso) ){ self.cantidad=7; PararDaemon(self); give self ~encendido; rtrue; } give self encendido; if (self.cantidad > 0) self.cantidad--; switch(self.cantidad) { 5: "^Algo mete un ruido cerca del Arco Druso.^ Cuando me volteo a mirar no veo nada."; 3: "^Algo cruza a la carrera el camino frente a mi.^ No distingo bien qué o quién es."; 1: "^¡Unas sombras surgen por ambos lados del camino y se ocultan aprisa!"; 0: Asaltantes.proyeccion(1); banderafin = 4; PararDaemon(self); give self ~encendido; rtrue; }; ], al_n ViaAppia, arriba [;<>;], afuera [;<>;], al_s [; if (Mensajero has encendido) "El camino es muy poco seguro a estas horas. Necesito protección... y ya quiero volver al barrio."; else "Aun no he cumplido con el encargo de Terentia. No puedo salir a los caminos..."; ]; ! PSI PSI Porteadores "porteadores" Limbo with nombre_m 'porteador' 'esclavo' 'hombre', nombre_mp 'porteadores' 'esclavos' 'hombres', adjetivos 'fornidos' 'fornido' 'esbeltos' 'esbeltos' 'robustos' 'robusto' 'sentados' 'sentado', describir "Los porteadores descansan junto a la litera.", descripcion_corta "Son dos fornidos y esbeltos esclavos, descansando a ambos extremos de la litera.", descripcion_larga "Son dos fornidos y esbeltos esclavos, que fácilmente podrían cargar con la litera, conmigo... y algo de equipaje al hombro, si fuera menester. Como es de costumbre entre los esclavos, aprovechan su tiempo de ocio descansando, sentados cada uno a ambos extremos de la litera.", vida [; Hablar: "Los esclavos no responden a mis palabras, pero hacen gestos corteses hacia la litera."; ], has masculino nombreplural; PSI Mensajero "mensajero" Limbo with nombre 'mensajero' 'alguien' 'hombre' 'tipo' 'porte', adjetivos 'delgado' 'buen' 'flaco', describir [; ! Aun no hablamos con él if (self hasnt visitado) "Cerca del arco hay alguien, parado entre las sombras. "; else "El mensajero espera de pie junto al Arco Druso. "; ], descripcion_corta [; print "El "; ! Aun no hablamos con él if (self hasnt visitado) print "tipo "; else print "mensajero "; "me observa con interés. Está ataviado para un largo viaje."; ], descripcion_larga [; print "El "; ! Aun no hablamos con él if (self hasnt visitado) print "tipo "; else print "mensajero "; "es mas bien delgado pero de buen porte. Va bien vestido, pero sus ropas son más apropiadas para un viaje largo que para la ciudad. Me observa con interés y sin disimulo."; ], vida [; Hablar : ! Es primera vez que hablamos con él if (self hasnt visitado) { give self visitado; MensajeroSaludo.proyeccion(1); rtrue; ! Ya hablamos con él } else { give self encendido; move Correo to Limbo; move Mensajero to Limbo; move Legionario to Limbo; move ArmaduraLegionario to Limbo; move EspadaLegionario to Limbo; move Decorado_Legionario to Limbo; move Litera to ArcoDruso; move Porteadores to ArcoDruso; CorreoEntregado.proyeccion(1); ! puntuacion++; Conseguido(9); <>; } ], has masculino; ! Objetos de Puzzle Objeto_Puzzle Litera "litera" Limbo with nombre_f 'litera' 'vara', nombre_fp 'varas', nombre_m 'vehiculo', adjetivos 'sencillo', descripcion_corta "Es un vehículo sencillo, para ir tendido cómodamente y, con semejante porteadores, a salvo de los curiosos...", descripcion_larga "Es un vehículo sencillo, de dos varas, para ir tendido cómodamente. La litera se lleva a pulso y hace falta fuerza para llevarla a buena velocidad y por distancias medias. Justamente, sus porteadores fueron escogidos a la medida de la ocasión: robustos y disuasivos...", antes [; Meterse, Subir: move Muchedumbre to Limbo; print "Me subo a la litera, diciendo ~Al foro Aventino, muchachos...~^ Sin decir palabra, los porteadores toman la litera con brío y velocidad, emprendiendo el camino de regreso.^^ Tanto tiempo parece que llevo fuera de casa, que había olvidado lo cómodo que es viajar en litera... y lo disuasivos que pueden ser los porteadores, especialmente unos tipos tan fornidos como estos, que me llevan como si yo no pesara apenas nada.^^ Pronto llegamos al foro. No alcanzo a bajarme cuando los porteadores ya han salido a todo escape. No los culpo: yo también estoy queriendo que este día termine de una vez...^"; JugadorA(Foro); rtrue; ], has femenino soporte entrable escenario; ! Decorados Objeto_Localidad Objeto_Localidad_Arco "Arco Druso" with nombre_m 'monumento' 'arco' 'druso', descripcion [; if (localizacion == ArcoDruso) <>; else "El Arco de Druso se alza magnífico a pasos de las puertas de la ciudad. Si avanzara un poco al sur podría verlo con más detalle..."; ], antes [; Salirse: if (Localizacion == ArcoDruso) <>; else "No estoy en el Arco Druso..."; Meterse, Entrar: if (Localizacion == ArcoDruso) <>; else <>; ], esta_en [; if ( (Localizacion == ArcoDruso) || (Localizacion == ViaAppia) ) return true; ], has masculino escenario entrable abierto; Objeto_Escenario EntradasArcoDruso "entradas" ArcoDruso with nombre_f 'entrada', nombre_fp 'entradas', adjetivos 'ancha' 'anchas' 'alta' 'altas', descripcion "Las entradas, construidas sobre la carretera, son anchas y altas y sostienen con gracia los arcos. Permiten con holgura el paso de carros o peatones... aunque nadie pase por ellas en este momento.", antes [; Meterse : "Paso caminando bajo una entrada... y luego camino de vuelta por otra. Es divertido..."; ], has femenino nombreplural entrable; Objeto_Escenario ArcosArcoDruso "arcos" ArcoDruso with nombre_m 'paso', nombre_mp 'arcos' 'pasos', nombre_f 'curva', nombre_fp 'curvas', adjetivos 'hermoso' 'hermosos' 'suave' 'suaves' 'ancha' 'anchas' 'alta' 'altas' 'ancho' 'anchos' 'alto' 'altos', descripcion "Los arcos son muy hermosos, de curvas suaves, de unos 7 pasos de alto y unos 5 pasos de ancho.", antes [; Tocar, BuscarEn: "No alcanzo. Son tan altos..."; Meterse : <>; ], has masculino nombreplural entrable; Objeto_Escenario ColumnasArcoDruso "columnas del arco" ArcoDruso with nombre_f 'columna' 'base', nombre_fp 'columnas' 'bases', nombre_m 'marmol' 'costado', nombre_mp 'costados', adjetivos 'hermosa' 'hermosas' 'blanco' 'negro' 'arco', descripcion "Las columnas, muy hermosas, están puestas a los costados de cada uno de los tres arcos. Son enteras de mármol negro, salvo las bases que están hechas con mármol blanco.", has femenino nombreplural; Objeto_Escenario PiedrasArcoDruso "piedras del arco" ArcoDruso with nombre_f 'piedra' 'veta', nombre_fp 'piedras' 'vetas', nombre_m 'marmol', adjetivos 'principal' 'principales' 'recubierta' 'recubiertas' 'fino' 'enorme' 'enormes' 'solida' 'solidas' 'gris' 'grises' 'negra' 'negras' 'arco', descripcion "Las piedras principales del arco son enormes, sólidas, recubiertas de un fino mármol gris con vetas negras.", has femenino nombreplural; !------------------------------------------------------------------- ! Punto de Inicio !------------------------------------------------------------------- ! Aquí empieza el juego. Este es el punto para imprimir el mensaje ! inicial de bienvenida y puesta en situación [Inicializar tecla; ! Modo "verbose", descripciones siempre largas modomirar = 2; box "~Modus Vivendi~" "Un relato de tiempos romanos" "Realizado por: Sebastián Armas (Incanus)" "(C) Año 2010" "Release 01.01.01" "I para NO VER la Intro," "A para ver textos animados," "R para Recuperar una Partida" "Otra para Empezar"; cambiarJugador(miJugador); ! Localización donde comienza el jugador localizacion = Esterilla; ! Texto no animado por defecto velocidad_texto = 0; @read_char 1 -> tecla; if ( (tecla=='i') || (tecla=='I') ) { print ""; } else if ( (tecla=='r') || (tecla=='R') ) <>; else { if ( (tecla=='a') || (tecla=='A') ) velocidad_texto = 20; Introduccion1.proyeccion(); if (velocidad_texto == 0) PrintPausa("^^",0); Introduccion2.proyeccion(); if (velocidad_texto == 0) PrintPausa("^^",0); Introduccion3.proyeccion(); if (velocidad_texto == 0) PrintPausa("^^",0); Introduccion4.proyeccion(); if (velocidad_texto == 0) PrintPausa("^^",0); } ! Iniciar ambientador universal ArrancarDaemon(ambientador_universal); ! Presentación Primer Acto LimpiaPantalla.proyeccion(); box " Roma" "" " Circa 58 AC" " durante el" "Primer Triunvirato" "" " "; PrintPausa("",0); LimpiaPantalla.proyeccion(); box " Acto 1" "" "Hora IV - ientaculum" "" " "; PrintPausa("",0); LimpiaPantalla.proyeccion(); ]; ! Objeto Ambientador ! Genera texto aleatorio según Localidad Objeto_Escenario ambientador_universal "FX" Limbo with daemon [n; !para dispersar un poco la sucesión de eventos if (random(10)>4) rtrue; switch(Localizacion) { Plaza, Terraza: n=random(10)-1; !para asegurar que salga entre 0 y 9 if (matriz_plaza->n==1) rtrue; matriz_plaza->n=1; if (Ninos notin Plaza) switch (n){ 0: "^Un vecino se acerca a la fuente, bebe de ella y luego se aleja refrescado."; 1: "^Una vecina sale de su casa, llega a la fuente y enjuaga en ella una mopa más bien mugrienta.^ Cuando ya está satisfecha con su aseo, la estruja y vuelve a meterse a su hogar."; 2: "^Un curioso personaje llega del foro caminando y, sacando una tabla de cera y un estilo de un morral en completo silencio, toma luego algunas notas, mirando aquí y allá.^ Luego, guarda los utensilios en el morral y se aleja rumbo al foro sin decir palabra."; 3: "^Un esclavo llega caminando, sucio de polvo, con apenas fuerzas para sentarse al pie de la fuente.^ Veo a la lavandera que sale a la plaza con una jarra y un trapo. Con calma y suavemente, la buena mujer da de beber al esclavo y lo limpia con el agua de la fuente.^ Con unas palabras de agradecimiento, el esclavo se levanta y sigue caminando monte arriba, mientras la lavandera vuelve a entrar a la lavandería."; 4: "^Se escuchan gritos de una de las casas. Parece una discusión marital."; 5: "^Se escuchan unos gemidos apenas contenidos de una de las casas. No parece que estén discutiendo, ahí dentro..."; 6: "^Un tipo flaco se asoma a la plaza, mira aquí y allá y luego se aleja."; 7: "^El guardia se acerca a la fuente y bebe un poco."; 8: "^Miro a mis vecinos afanarse en esto y aquello, sin pausa o descanso."; 9: "^Dos vecinos salen de una de las casas y se abrazan largamente.^ Vuelven a entrar..."; } else switch (n){ 0: "^Un vecino se acerca a la fuente, bebe de ella y luego se aleja refrescado."; 1: "^Una vecina sale de su casa, con un niño más bien mugriento a la rastra.^ Pese a que se resiste, la mujer lo mete en la fuente y lo restriega con un trapo.^ Terminado el aseo, la mujer vuelve a su casa y el chico, desnudo, se pone a jugar con los demás niños."; 2: "^Un curioso personaje llega del foro caminando y, sacando una tabla de cera y un estilo de un morral en completo silencio, toma luego algunas notas, mirando a los niños con mucha atención.^ Ante una mirada más bien severa de un vecino, guarda los utensilios en el morral y se aleja rumbo al foro sin decir palabra."; 3: "^Un esclavo llega caminando, sucio de polvo. Cansado, se sienta al pie de la fuente.^ Los niños se le acercan, tímidamente al principio.^ El esclavo, notándolos, les hace morisquetas y gestos cómicos. Los niños ríen encantados y le echan agua con las manos, lavándole entre las risas del esclavo.^ Con unas palmadas, el esclavo se levanta y sigue caminando monte arriba."; 4: "^Se escuchan gritos de una de las casas. Parece una discusión marital."; 5: "^Se escuchan unos gemidos apenas contenidos de una de las casas. No parece que estén discutiendo, ahí dentro..."; 6: "^Unos niños pasan corriendo y siguen de largo, monte arriba."; 7: "^Un niño se acerca a la fuente y bebe un poco."; 8: "^Miro a mis vecinos afanarse en esto y aquello, sin pausa o descanso."; 9: "^Dos vecinos salen de una de las casas y se abrazan largamente.^ Vuelven a entrar..."; } Foro: ! Aun no entregamos correspondencia al Mensajero if (Mensajero hasnt encendido) { n=random(10)-1; !para asegurar que salga entre 0 y 9 if ( (n==9)&& (matriz_foro->8~=1) ) ! para asegurar que los eventos de los bromistas n=8; ! salgan en orden: primero el 8, luego el 9 if (matriz_foro->n==1) rtrue; matriz_foro->n=1; switch (n) { 0: "^Un par de extranjeros pasan y se alejan, discutiendo acaloradamente sobre... vaya usted a saber. No entendí una palabra de lo que decían."; 1: "^Un esclavo pasa caminando, doblado bajo el peso de unos fardos. Lo veo salir del foro, arrastrando los pies."; 2: "^Un curioso personaje llega caminando y, sacando una tabla de cera y un estilo de un morral en completo silencio, toma luego algunas notas, mirando aquí y allá.^ Luego, guarda los utensilios en el morral y se aleja rumbo al mercado sin decir palabra."; 3: "^Una litera entra en el foro, llevada por dos fornidos porteadores. Entre las gasas de sus cortinajes me parece distinguir una mujer de singular belleza.^ La litera se aleja del foro, con su hermosa pasajera aun oculta..."; 4: "^Dos ciudadanos llegan al foro, discutiendo de política.^ La discusión sube cada vez más de tono, y me parece escuchar los nombres ~Catilina~, ~Cícero~, ~César~, ~Craso~ y ~Pompeyo~, gritados casi como insultos.^ Notando algunas miradas poco amistosas, ambos romanos deciden llevar su discusión a otra parte."; 5: "^Alguien me empuja y me doy vuelta para protestar... pero me encuentro frente a un tipo descomunal, ancho como tres hombres normales, pero con una expresión bonachona.^ Parece distraído, y lo veo mirar de un lado a otro, como buscando algo o a alguien.^ ~Disculpa, ciudadano...~ me dice en una voz suave y profunda, para luego perderse de nuevo entre la gente."; 6: "^Llega un pregonero cuyo rostro me resulta familiar y, tras carraspear un poco, intenta leer de un pergamino más bien largo.^ El bullicio es tal que no se escucha nada de lo que dice.^ Frustrado, se va del foro."; 7: "^Miro alrededor mío, pasmado por la variedad y cantidad de gente que entra y sale sin cesar del foro."; 8: "^Alguien me empuja.^ Me doy vuelta para confrontarlo y siento un codazo en la espalda.^ Al volverme no veo a nadie, pero alguien ríe a mis espaldas.^ Tenemos bromistas en el foro, parece..."; 9: "^Alguien me empuja.^ Me doy vuelta y lanzo una patada hacia atrás y siento un agradable crujido de huesos y un juramento apagado.^ Me vuelvo y proyecto mi codo hacia atrás, cortándole el resuello a alguien que estaba demasiado cerca mío.^ Varios ciudadanos señalan riendo a carcajadas a un grupo de bromistas que se alejan cogeando del foro, mientras otros me felicitan por mi agilidad..."; } } Mercado: n=random(10)-1; !para asegurar que salga entre 0 y 9 if (matriz_mercado->n==1) rtrue; matriz_mercado->n=1; switch (n){ 0: "^Uno de los clientes grita ~¡Asaltante!~^ Varias personas se dan vuelta para ver la cara sonrojada del peletero, que se deshace en explicaciones sobre el precio de algún artículo."; 1: "^Veo pasar unos clientes con cara más bien enojada.^ No hay como saber si vienen llegando al mercado o van de salida..."; 2: "^Un curioso personaje llega del foro caminando y, sacando una tabla de cera y un estilo de un morral en completo silencio, toma luego algunas notas, mirando aquí y allá.^ Luego, guarda los utensilios en el morral y se aleja rumbo al foro sin decir palabra."; 3: "^El parrillero despacha unos clientes muy satisfechos."; 4: "^Una matrona azorada me pregunta ~¿Tienes cambio, ciudadano?~^ Niego cortésmente y la buena mujer sigue buscando quien le de sencillo."; 5: "^El herrero despacaha con desgano a un cliente.... que no le ha comprado."; 6: "^El bullicio del mercado se vuelve insoportable por algunos momentos."; 7: "^El peletero trata de gritar más fuerte que los animales que vende... y lo consigue."; 8: "^A la voz de ~¡Ladrón!~ todos los clientes, apoyados por algunos vendedores, sacan del mercado a patadas a un pillo no muy hábil."; 9: "^Intento esquivar a la gente que pasa apurada."; } } ]; ! CORTOMETRAJES cortometraje LimpiaPantalla with descripcion "" ; cortometraje Introduccion1 with descripcion "~¡Iä! " "¡Iä!~^^" "Los gritos de la masa humana se confunden con el rugido de las llamas " "y las sombras de los bailarines se mezclan entre el humo y las chispas, " "mientras se mueven desenfrenadamente " "al ritmo de una melodía que sólo ellos pueden escuchar.^^" "~¡Iä! " "¡Iä!~^^" "El cántico se repite una y otra vez, " "como una salmodia hipnótica, " "mareadora hasta la nausea " "debido al calor y la falta de aire.^^" "De pronto, " "una figura enorme se yergue sobre la hoguera, " "alzando unas alas enormes, " "entre las cuales se adivina una enorme y deforme cabeza " "de la que sobresalen tentáculos. " "El horror me consume, " "pero los cánticos no paran, " "más bien arrecian, " "y de pronto alguien grita, " "exultante:^^" "~¡Medusa! " "¡Medusaaaaa!~^^" "Y yo bajo el rostro, " "aterrado, " "no porque tema convertirme en piedra, " "sino porque ese ser monstruoso no puede ser una de las gorgonas, " "es algo que no tiene nombre, " "es..." ; cortometraje Introduccion2 with descripcion "...es un gallo cantando, " "a lo lejos, " "lo que por fin termina de despertarme, " "mientras el sol de la mañana me calienta el cuerpo.^^" "Malditas pesadillas: " "se desvanecen con la primera luz del alba " "pero dejan un gusto a vino agrio en la mente.^^" "Ya me pueden volver a invitar a un ceremonial extranjero en el campo, " "que tendré preparada una negativa contundente y lo más soez posible: " "ya van tres meses desde la última vez " "y aún no logro sacarme estos horribles recuerdos.^^" "Esto es lo que gano por interesarme en otras religiones, " "por ampliar mis horizontes mundanos. " "Aunque ya me aburrí de ir al templo de Apolo en busca de paz, " "me consuelo confirmando la sabiduría popular en temas de religión, " "política " "y culinaria: " "es mejor quedarse en lo que uno conoce, " "por fatigoso o aburrido que parezca. " "Las vestales, " "por ejemplo, " "nunca me han dado pesadillas, " "je...^^" "Suspiro.^^" "Nada como nuestro buen materialismo romano " "para terminar de despejarme las brumas y telarañas del sueño.^^" "De hecho, " "será menester que huya al olvido " "de la manera más efectiva que existe en Roma: " "ocupándome en algo." ; cortometraje Introduccion3 with descripcion "Justamente hace ya tres meses fue que me harté de todo en casa " "y me perdí en medio de la ciudad, " "buscando alejarme de las responsabilidades que trae la toga " "y mi recién estrenada ciudadanía.^^" "De la toga me deshice fácil y rápidamente, " "pero mi ciudadanía ha sido otra cosa. " "Al poco andar, " "llegué a este barrio " "y fui cautivado por su gente sencilla, " "sus afanes diarios " "y sobre todo por la lavandería en la que ahora habito.^^" "Y está la lavandera, por cierto.^^" "La dueña de casa, " "con esa intuición que sólo las matronas de antiguo tienen, " "supo acogerme sin demasiadas preguntas, " "pero lo cierto es que, " "con fino sentido práctico, " "me puso a trabajar muy pronto, " "haciendo esto y aquello, " "consiguiendo cosas, " "solucionando problemas varios, " "de la casa y el barrio...^^" "...y en menos de una semana " "me ví transformado en el factotum ad honorem del lugar. " "Bueno, " "con derecho a un lugar cómodo para pernoctar " "y una comida al día, " "pero realizando servicios pro bono, " "en definitiva."; cortometraje Introduccion4 with descripcion "Y la verdad es que me ha venido bien.^^" "La gente de Roma es buena gente, " "siempre ocupada con sus trajines " "y trabajos, " "por cierto, " "pero son trabajos honestos, " "limpios, " "despachados con esfuerzo " "y una prontitud que le dan esa atmósfera bullente y agitada a la ciudad, " "ese espíritu inquieto de la urbe, " "que en casa yo no conocía.^^" "Un espíritu del que, " "de momento, " "formo parte.^^" "Bueno, " "hay que levantarse.^^" "Roma no descansa, " "la lavandería tampoco, " "y es seguro que la lavandera ya tiene alguna labor para mí..." ; cortometraje LavanderaIncrepa with descripcion "~¿Ya no saludas?~" ", me increpa la lavandera.^" "Avergonzado, " "me detengo " "y me doy vuelta para charlar.^" ; cortometraje LavanderaSaludo with descripcion "~¿Cómo estás, matrona?~ " "la saludo.^" "~Aquí me ves, " "en lo de siempre.~ " "responde sonriendo y sin parar de restregar.^" "La verdad, " "conozco pocas personas en Roma " "con la constancia " "y determinación de esta buena mujer.^^" "Será por eso que sigo pernoctando aquí...^^" "~¿Hay algo particular que necesites hoy?~ " "le pregunto, " "solícito.^" "~Materia prima, " "como todos los días.~ " "me dice, " "indicando con un gesto el trabajo de los esclavos.^" "Y callando, vuelve a lo suyo...^" ; cortometraje OrinaTina with descripcion "Dándole la espalda a la lavandera con algo de decoro, " "orino con cuidado sobre la colada en la tina. " "Los esclavos hacen una pausa, " "con un gruñido de aprobación, " "mientras la lavandera me dedida una dulce sonrisa de gratitud." ; cortometraje GuardiaSaludo1 with descripcion "~¿Cómo va eso?~ " "lo saludo.^" "~No muy bien.~ " "responde sin apenas distraerse. " "Es un tipo de pocas palabras... " "y de argumentos contundentes.^" "~¿Algún problema?~ " "pregunto en voz baja.^" "~Deimos~ " "responde disgustado.^^" "Por su tono de voz, sospecho que Deimos es persona non grata...^^" "~Deimos es un tipo que no es del barrio,~ " "prosigue el Guardia, " "~Sus gustos personales son... " "poco recomendables para un lugar con niños.~^" "~¿De qué estamos hablando, " "exactamente?~ " "le pregunto susurrando aún.^" "~Es un pederasta confeso,~ " "responde enojado, " "~y como los burdeles... especializados de la ciudad no le satisfacen, " "le ha dado por merodear por los barrios de la periferia, donde puede... " "darse el gusto y luego darse a la fuga.~^^" ; cortometraje GuardiaSaludo2 with descripcion "Ninguno lo dice, pero nuestro barrio se ajusta a los gustos de Deimos.^^" "En casa me educaron severamente y, " "por cierto, " "me dieron una formación... " "más bien liberal en temas sexuales. " "Sin embargo, " "los niños, " "según mi criterio, " "nunca deben ser arrancados de su infancia de modo tan brutal. " "Por el 'bien' de Deimos, " "espero que no esté buscando 'satisfacción' por aquí.^^" "~Estaré atento~ " "le digo, " "tratando de tranquilizarlo.^" "No sirve de nada. " "Me responde con un ~Estupendo~, " "y luego me da señas adicionales para identificar a Deimos, " "pero está claro que la situación está lejos de ser ~estupenda~.^" ; cortometraje MedicoTrato with descripcion "El médico me saluda con un ~Hola, ciudadano~.^" "~¡Saludos, galeno!~ " "le respondo. " "~Os echamos de menos calle arriba~ " "le digo con nuestra franqueza habitual.^" "~He estado ocupado con mis clientes que pagan~ " "responde sonriendo, " "sin atisbo de enojo. " "~Ahora mismo estoy buscando material para mis estudios de anatomía, " "pero no hay oídos... " "amistosos para eso en el foro.~^" "Me mira especulativamente. " "~Si me ayudas con eso, " "podría pasar por vuestra calle mañana temprano.~^" "Un cadáver fresco en Roma no es cualquier cosa, " "pero he conseguido cosas más difíciles antes.^" "~¡Trato hecho!~ exclamo mientras sellamos el acuerdo " "con un apretón de manos. " "~Espérame acá y lo tendrás antes del almuerzo.~^" "Alza una ceja, escéptico, " "pero asiente sin decir palabra y me deja marchar.^" ; cortometraje SaludoAprendiz1 with descripcion "~¿Cómo van esos estudios, muchacho?~ lo saludo.^" "El muchacho tarda en responder, " "como si viniera despertando de un sueño. " "~¿Eh?... Bien,.. bien, ciudadano, gracias~ " "y baja la mirada, perdido nuevamente, " "pero da un respingo y reacciona.^" "~¿Requerís acaso los servicios de mi maestro?~ pregunta solícito.^" "~No... ¡Yo estoy bien de salud, gracias!~ le respondo. " "El muchacho asiente, otra vez con aire abstraído.^" "~A ti, en cambio, te noto algo distraído " "¿Te sientes bien?~ pregunto a mi vez.^" "El muchacho menea la cabeza. " "~No estoy seguro, mi señor~, responde. " "~Hace poco acompañé a mi maestro " "a un ceremonial más bien extraño en el campo " "y desde entonces he tenido sueños muy raros~.^^" "Parpadeo. Sería demasiada coincidencia, pero...^^" ; cortometraje SaludoAprendiz2 with descripcion "~¿Hay humo, gritos y llamas en esos sueños?~ le pregunto.^" "El muchacho me mira con curiosidad " "~¿Como sabéis que...?~ me pregunta a su vez.^" "Le hago un gesto impaciente para que prosiga " "y así lo hace, más decidido.^^" "~Sí, al principio son así... " "pero luego tengo una sensación extraña, " "como si alguien estuviera mirando con mis ojos... " "y luego yo estoy viendo a través de los ojos de otro... " "y estoy en una ciudad, pero no es como Roma... " "es de noche... " "hay luces brillantes por todas partes... " "y cosas metálicas y brillantes pasan rápidas por el suelo... " "se ven objetos luminosos volando por los aires... " "y la gente conversa a solas, " "usando unas cosas cuadradas pegadas a las orejas... " "y entonces despierto.~^^" ; cortometraje SaludoAprendiz3 with descripcion "Pobre chico: si estamos los dos enfermos de lo mismo, " "a él le ha dado más fuerte que a mí. " "Si no estamos enfermos... " "prefiero no pensar más sobre qué es lo que estaría pasando, entonces. " "O a qué otras prácticas " "se dedica este doctor, " "aparte del arte de curar.^^" "~¿Te ha dado algún paliativo, tu maestro?~ le pregunto.^" "~Sí...~ responde al punto, " "mostrándome un medallón que luce al cuello, " "oculto entre sus ropas. " "~Me lo dió mi maestro hace poco, " "y ya no sueño con esa extraña ciudad, al menos.~^^" "Lo miro con detenimiento. " "El medallón es circular, " "con una estrella de cinco puntas " "y una especie de ojo al centro. " "Al mirarlo, siento un cosquilleo raro en la nuca.^^" "~Bueno, muchacho~, me despido, " "~espero que tengas un sueño más tranquilo y reponedor.~^" "~Gracias, ciudadano...~ responde el muchacho, " "volviendo a a doptar al punto una expresión perdida.^" ; cortometraje ExaminarPederasta1 with descripcion "Es un tipo flaquísimo... " "amén de otras señas que lo identifican como Deimos: " "alguien con gustos poco recomendables para un lugar con niños...^" "Ya que es un pederasta confeso.^^" "Vaya...^^" "Creo que ya tengo mi cadáver fresco..." ; cortometraje ExaminarPederasta2 with descripcion " pero sería más facil si lo sorprendo " "con las manos en la masa.^" "Para eso, podría traer a los niños y al guardia aquí...^^" "O bien podría resolverlo por mi mismo, " "arriesgando sólo mi pellejo y dejando a los niños fuera de esto.^^" "Decisiones, decisiones, decisiones..." ; cortometraje HablarPederasta1 with descripcion "Lo saludo con un ~¿Qué hay ciudadano?~^" "El tipo levanta la vista para ver quien le habla...^^" "y me entero por fin con quien estoy tratando.^^" ; cortometraje HablarPederasta2 with descripcion "~¿Se ha extraviado, ciudadano?~ lo increpo^" "El tipo levanta la vista asustado...^^" "y me entero por fin con quien estoy tratando.^^" ; cortometraje HablarPederasta3 with descripcion "~¿Se ha extraviado, ciudadano?~ lo increpo^" "El tipo levanta la vista asustado...^^" "y me entero por fin con quien estoy tratando.^^" ; cortometraje PederastaMata with descripcion "Me lanzo sobre Deimos " "e intento arrojarle al suelo, " "pero me esquiva y tropiezo.^" "Mientras me doy vuelta para pararme, " "veo que algo reluce en su mano... " "algo largo y delgado.^" "Intento ponerme de pie, " "pero se deja caer encima mío, " "aplastándome con sus rodillas " "para luego hundir su puñal en mi cuello, " "mientras su otra mano tapa mi boca.^" "Las fuerzas me abandonan lentamente, " "mientras mi sangre " "se escurre " "por el suelo " "del callejón...^" ; cortometraje MataPelotaTerraza with descripcion "Apunto con cuidado a donde creo que está Deimos " "y lanzo la pelota con fuerza.^" "Se escucha un crujido fuerte: " "Deimos se desploma allá abajo " "y la pelota rueda por el callejón.^^" "Listo...^" ; cortometraje MataPelotaCallejon with descripcion "Sin darle tiempo a reaccionar, " "le lanzo la pelota a la cabeza.^" "Deimos intenta esquivarla, " "pero le golpea con fuerza por un costado " "y se escucha un crujido fuerte.^" "Deimos se desploma en el suelo " "y la pelota rueda por el callejón.^" ; cortometraje GuardiaDeimosPlaza with descripcion "Procurando que los niños no se den cuenta, " "le susurro ~Encontré a Deimos en el callejón.~^" "Me mira alarmado, pero agrego rápidamente " "~Tranquilo, los niños no se han dado cuenta... " "pero necesito que me ayudes a reducirlo.~^" "Sin decir palabra, el guardia asiente. " "Dándome una palmada en el hombro, " "se mete dentro del callejón, " "conmigo a la siga.^" ; cortometraje GuardiaCadaverPlaza with descripcion "Procurando que los niños no se den cuenta, " "le susurro ~Encontré a Deimos en el callejón.~^" "Me mira alarmado, pero agrego rápidamente " "~Tranquilo, ya dí cuenta de él... " "pero necesito que cuides del cuerpo " "hasta que vengan a buscarlo: " "yo me encargo de esto.~^" "Sin decir palabra, el guardia asiente. " "Dándome una palmada en el hombro, " "se mete dentro del callejón.^" ; cortometraje PelotaCallejonTipo with descripcion "La pelota se mete al callejón " "y los niños corren tras ella.^" "El guardia me lanza una mirada molesta, " "y va tras los niños.^" "Curioso, decido seguirlos...^" ; cortometraje PelotaCallejonDeimos with descripcion "La pelota se mete al callejón " "y los niños corren tras ella.^" "Perfecto.^" "Espero unos instantes " "y le hago un gesto al guardia, " "para que me siga...^" "Y entramos al callejón.^" ; cortometraje GuardiaDelataPederasta with descripcion "En voz baja, le digo ~Espera a que sepamos con quién tratamos...~^" "Enfurecido, me responde, susurrando ~Es Deimos, y es un maldito pederasta.~^^" "Vaya...^^" "Creo que ya tengo mi cadáver fresco...^^" "Siempre susurrando, le indico ~De acuerdo. Espera mi señal para atacar. " "Yo lo distraigo y tu te encargas de él.~^" "El guardia asiente en silencio." ; cortometraje GuardiaMataPederasta with descripcion "Me lanzo sobre Deimos " "e intento arrojarle al suelo, " "pero me esquiva y tropiezo.^" "Mientras me doy vuelta para pararme, " "veo que algo reluce en su mano... " "algo largo y delgado.^" "Intento ponerme de pie... " "y el guardia coge a Deimos por el cuello, " "como si fuera un juguete.^" "Cubriéndole la boca con la otra mano, " "azota el cráneo de Deimos contra la pared de la lavandería, " "una y otra vez.^" "El cuerpo de Deimos se desliza sin vida al suelo del callejón " "y el guardia me musita un ~Gracias~.^" "Lo dicho: un hombre de pocas palabras... " "y de argumentos contundentes.^" ; cortometraje GuardiaCadaverCallejon with descripcion "Recuperando el aliento, " "le digo ~Gracias por la ayuda.~^" "Sin decir palabra, me dirige un sonrisa breve.^" "~Necesito que cuides del cuerpo~, continúo, " "~hasta que vengan a buscarlo: " "yo me encargo de esto.~^" "Sin decir palabra, el guardia asiente.^" ; cortometraje MedicoConseguido with descripcion "Saludo al médico con un ~Ya tengo lo que necesitas~.^" "~¿Tan pronto?~ me pregunta, dudando.^" "~Dije que lo tendría para antes de almuerzo ¿no?~ le respondo socarronamente.^" "~Cierto es...~ responde sonriendo " "~¿Cuándo puedo tener el... material de estudio en mis manos?~^" "~Manda calle arriba a tus sirvientes hoy mismo,~ le instruyo " "~y que pregunten a nuestro guardia.~^" "~¡Excelente!~ exclama. " "~Mi gente irá a vuestra calle hoy mismo " "y mañana temprano estaré ahí y os atenderé.~^" "Nos damos un nuevo apretón de manos y el médico desaparece entre la muchedumbre, " "seguido por su aprendiz, que aún sigue con la cabeza en las nubes.^" ; cortometraje SacerdotisaSaludo1 with descripcion "~¿Cómo estás, señora?~ " "la saludo.^" "~En paz, Ciudadano~ " "responde suavemente " "~¿Y vos, " "buscáis acaso también la paz?~^" "No puedo evitar una risa seca.^" "~Ya quisiera yo tener paz~ " "le respondo " "~En este momento tengo hambre " "y busco en qué ocuparme para satisfacerla.~^" "~¿No os esperan en casa para el prandium?~ " "pregunta, curiosa.^" "Me encojo de hombros, " "antes de responder " "~Estoy algo lejos de casa, estos días...~^^" "La sacerdotisa calla unos momentos y me mira con atención.^^" "~¿Por casualidad trabajáis calle arriba, en el Aventino?~ " "pregunta con no disimulado interés.^" "~¡Pues sí que estáis informada!~ " "respondo con candidez.^" "Le toca a la sacerdotisa reírse ahora. " "~Es difícil no estar enterada de lo que pasa en Roma, " "por mucho que pase la mayor parte de mi tiempo en este templo.~^^" ; cortometraje SacerdotisaSaludo2 with descripcion "Callando nuevamente, la sacerdotisa me mira otra vez y parece llegar a una decisión, " "pues asiente para sí misma antes de hablar de nuevo.^^" "~Tengo algo que proponeros, " "pero primero atendamos a las necesidades del momento.~^" "~¿Qué proponéis?~ pregunto.^" "~Vos necesitáis almorzar y yo necesito un conejo para la diosa, " "pero no puedo dejar el templo en estos momentos.~^^" "Vaya...^^" "~¿Quid pro quo?~ pregunto.^" "La sacerdotisa asiente con una sonrisa, " "mientras dice ~Do ut des~.^^" "Bueno, esta es una de las cosas un tanto incómodas de Roma: " "el clero a veces es demasiado mundano, " "para gustos más ~puristas~.^" "En fin, " "carpe diem y todo eso...^^" ; cortometraje SacerdotisaSaludo3 with descripcion "Asiento a mi vez, " "y con una leve reverencia, me retiro.^" ; cortometraje SacerdotisaSaludo4 with descripcion "~¿Cómo estás, señora?~ " "la saludo.^" "~En paz, Ciudadano~ " "responde suavemente " "~¿Y vos, " "buscáis acaso también la paz?~^" "No puedo evitar una risa seca.^" "~Ya quisiera yo tener paz~ " "le respondo " "~En este momento busco algo en que ocupar el día.~^" "~¿No os esperan en casa para el prandium?~ " "pregunta, curiosa.^" "Me encojo de hombros, " "antes de responder " "~Estoy algo lejos de casa, estos días...~^^" "La sacerdotisa calla unos momentos y me mira con atención.^^" "~¿Por casualidad trabajáis calle arriba, en el Aventino?~ " "pregunta con no disimulado interés.^" "~¡Pues sí que estáis informada!~ " "respondo con candidez.^" "Le toca a la sacerdotisa reírse ahora. " "~Es difícil no estar enterada de lo que pasa en Roma, " "por mucho que pase la mayor parte de mi tiempo en este templo.~^^" ; cortometraje SacerdotisaSaludo5 with descripcion "Callando nuevamente, la sacerdotisa me mira otra vez y parece llegar a una decisión, " "pues asiente para sí misma antes de hablar de nuevo.^^" "~Tengo algo que proponeros.~^" "~¿Qué proponéis?~ pregunto.^" "~Vos necesitáis oocuparos y yo necesito... " "resolver algunos asuntos, " "pero no puedo dejar el templo en estos momentos.~^^" "Vaya...^^" "~¿Quid pro quo?~ pregunto.^" "La sacerdotisa asiente con una sonrisa, " "mientras dice ~Do ut des~.^^" "Bueno, esta es una de las cosas un tanto incómodas de Roma: " "el clero a veces es demasiado mundano, " "para gustos más ~puristas~.^" "En fin, " "carpe diem y todo eso...^^" ; cortometraje SacerdotisaSaludo6 with descripcion "~¿Cómo estás, señora?~ " "la saludo.^" "~En paz, Ciudadano~ " "responde suavemente " "~¿Y vos, " "buscáis acaso también la paz?~^" "No puedo evitar una risa seca.^" "~Ya quisiera yo tener paz~ " "le respondo " "~En este momento tengo hambre " "y busco cómo usar esto para satisfacerla~ " "y le enseño el conejo.^" "~¿No os esperan en casa para el prandium?~ " "pregunta, curiosa.^" "Me encojo de hombros, " "antes de responder " "~Estoy algo lejos de casa, estos días...~^^" "La sacerdotisa calla unos momentos y me mira con atención.^^" "~¿Por casualidad trabajáis calle arriba, en el Aventino?~ " "pregunta con no disimulado interés.^" "~¡Pues sí que estáis informada!~ " "respondo con candidez.^" "Le toca a la sacerdotisa reírse ahora. " "~Es difícil no estar enterada de lo que pasa en Roma, " "por mucho que pase la mayor parte de mi tiempo en este templo.~^^" ; cortometraje SacerdotisaTerentia1 with descripcion "~Aquí lo tenéis...~ le digo, " "mientras le entrego el conejo.^" "La sacerdotisa lo recibe con una sonrisa y, " "sin decir palabra, " "se da vuelta y camina hacia el altar.^" "Me mantengo a distancia y en respetuoso silencio durante el sacrificio.^" "Una vez que ha concluido sus plegarias, " "la sacerdotisa me hace un gesto " "y me conduce por detrás del muro en que está apoyado el altar.^^" "En uno de sus aposentos, " "me hace sentar ante una mesa sencilla y, " "mientras bebo un poco de vino, " "la veo preparar el conejo sin apenas decir palabra.^" "En silencio, " "me sirve un guiso simple, " "con cebollas y aceitunas, " "del que doy cuenta con gusto... " "y solo, " "ya que ella, " "nada más servirlo, " "se excusa y se retira de la habitación.^^" ; cortometraje SacerdotisaTerentia2 with descripcion "~Estoy a vuestro servicio...~ le digo.^" "La sacerdotisa me recibe con una sonrisa y, " "sin decir palabra, " "me hace un gesto " "y me conduce por detrás del muro en que está apoyado el altar.^^" "En uno de sus aposentos, " "me hace sentar ante una mesa sencilla y, " "mientras bebo un poco de vino... " "espero a solas, " "ya que ella, " "nada más servirlo, " "se excusa y se retira de la habitación.^^" ; cortometraje SacerdotisaTerentia3 with descripcion "Estoy terminando de servirme " "cuando la sacerdotisa vuelve a entrar, " "acompañada de otra persona. " "Apenas tengo tiempo de levantar la vista y, " "disimulando mi sobresalto como mejor puedo, " "me pongo de pie con cuidado " "y saludo con respeto, " "tal como me enseñaran en casa...^^" "...porque ante mí tengo a Terentia de los Helvi, " "esposa del ilustre Marco Tulio Cícero.^^" "Según sé, " "su marido está aún en el exilio " "y ella misma, " "aunque permanece en Roma, " "está en una posición delicada, " "tratando de defender la honra de su marido " "frente a la estricta sociedad romana... " "y los bienes de la familia de la codicia de los banqueros.^" "Todos estos trabajos han dejado su huella en esta mujer, " "que a pesar de su porte altivo " "no logra ocultar de su rostro " "el cansancio y la pena de estos últimos días.^^" "Las simpatías políticas de mi familia aparte, " "no puedo sino sentir admiración por la lealtad y la persistencia de Terentia, " "tan parecida y a la vez tan distinta a la lavandera " "que aún me recibe en su casa.^^" ; cortometraje SacerdotisaTerentia4 with descripcion "Turbado, " "saludo nuevamente con un " "~Mi señora Terentia...~ " "y una reverencia breve.^" "La señora asiente levemente a mi saludo, " "e indicando con un gesto delicado a la sacerdotisa, " "habla con una voz educada aunque algo áspera. " "~Mi anfitriona y actual protectora " "me indica que sois hombre discreto " "y presto para servicios y menesteres varios.~^" "~Me dedico a ello hace no mucho,~ " "respondo asintiendo a mi vez, " "~pero se me da con facilidad " "y no temo cumplir con cualquier encargo...~^" "Interrumpiendo, " "Terentia me mira con dureza " "y espeta " "~¿Cualquier encargo?~^" "La miro a los ojos antes de responder " "~Sólo si son encargos honestos, " "mi señora.~^^" ; cortometraje SacerdotisaTerentia5 with descripcion "Su rostro suaviza su expresión. " "~Es un encargo honesto lo que tengo para vos. " "Mi marido sigue en exilio, " "como toda Roma sabe, " "y hacerle llegar correspondencia resulta...~ " "titubea " "~...difícil. He conseguido coordinar envíos " "mediante mensajeros de su editor y cuñado Tito Pomponio Atico, " "pero mis movimientos están vigilados, " "especialmente cerca del correo afuera del templo. " "Mi anfitriona no puede dejar este lugar sin arriesgar mi refugio... " "pero vos podríais ayudarme.~^" "Sin titubear, respondo " "~Podéis contar conmigo.~^" "Extrañada, " "la señora pregunta " "~¿No queréis conocer antes el pago por vuestros servicios?~^" "Sonriendo, " "y un poco sonrojado le respondo. " "~Señora, " "me recordáis mucho a una persona " "cuya estima valoro muchísimo. " "Si mediante este servicio " "llego a contar con la vuestra, " "me sentiré ampliamente recompensado.~^^" "Terentia, " "a pesar de sí misma, " "se conmueve e intenta disimularlo hablando con la sacerdotisa." "~Sois en efecto buen juez del carácter de las personas.~^" "La sacerdotisa responde sonriendo " "~Y por ello os mantengo bajo mi protección.~^^" "Un breve silencio nos permite a todos reflexionar sobre las buenas virtudes romanas...^^" ; cortometraje SacerdotisaTerentia6 with descripcion "Terentia me entrega un paquete de correspondencia. " "~Llevad este paquete al mensajero " "que os espera en el Arco de Druso, " "a las afueras de Roma. " "El nombre del editor de mi esposo os servirá de santo y seña.~^" "La buena mujer suspira, " "con alivio. " "~Volved entonces a este templo " "y hablaremos de vuestro pago... " "y de mi estima.~ conluye, sonriendo.^^" "Con una reverencia, " "me despido de ambas mujeres " "y salgo de la habitación." ; cortometraje CorreoFinalAlternativo with descripcion "Descubro, " "de pronto, " "que ya no me interesa pasarme el resto del día " "haciendo cosas para otros " "y que preferiría descansar tumbado en mi esterilla, " "en la terraza de la lavandería, " "contemplando a Roma y su gente.^^" ; cortometraje CorreosFinal with descripcion "Entro en la oficina de correos " "y diviso al fondo un mesón de atención desocupado.^^" "El funcionario me mira con sospecha, " "mientras le extiendo el paquete de cartas y, " "con una sonrisa de oreja a oreja, " "le explico quién la manda " "y para quién están destinadas..." ; cortometraje LavanderaFinal with descripcion "La lavandera me mira con sospecha, " "mientras le extiendo el paquete de cartas.^^" "~Matrona, debo pediros un favor~ " "le digo con cansancio fingido.^" "~Me he afanado demasiado hoy, " "así que os pido que por favor enviéis a uno de vuestros esclavos " "para que entreguen estas cartas en el correo del foro.~^" "La lavandera me da una palmada afectuosa en el hombro, " "chasquea los dedos " "y le entrega el paquete a uno de los esclavos, " "que sale a todo escape rumbo al foro.^^" "Doy un suspiro hondo, " "y encamino mis pasos escaleras arriba." ; cortometraje GuardiaFinal with descripcion "El guardia me mira con sospecha, " "mientras le extiendo el paquete de cartas.^^" "~Disculpa, pero debo pedirte un favor~ " "le digo con nerviosismo fingido.^" "~Todo este jaleo con Deimos me ha afectado los nervios, " "así que te pido que por favor entregues estas cartas por mi, " "en el correo del foro. " "Yo quedo a cargo del cuerpo hasta que vuelvas...~^" "El guardia me dirige una mirada comprensiva, " "asiente, " "y sale del callejón rumbo al foro.^^" "Doy un suspiro hondo, " "me siento junto al cadáver del pederasta " "y espero tranquilo el regreso del guardia." ; cortometraje BuhoneroFinal with descripcion "Le hago una seña al buhonero, " "que asiente en silencio.^" "El buhonero desaparece de mi vista " "y vuelve luego con dos mulas que asegura al carro con presteza.^^" "~Patrón, debo pediros un favor~ " "le digo con azoramiento fingido.^" "El buhonero me mira con sospecha, " "mientras le extiendo el paquete de cartas.^" "~He recordado que tengo otro compromiso, " "así que os pido que por favor entreguéis estas cartas " "a un mensajero que os estará esperando en el Arco Druso, " "a las afueras de Roma.~^" "Mientras se rasca la cabeza mirando el paquete, " "me apuro en agregar " "~Si no le encontrais al llegar, " "entregad esta cartas en cualquier oficina de correos en vuestra ruta " "y servira lo mismo...~^^" "El buhonero me mira ahora con curiosidad, " "pero luego se encoje de hombros. " "Después, " "se sube al pescante del carro, " "chasquea los labios y sale del mercado...^^" "Doy un suspiro hondo, " "y encamino mis pasos de regreso a la lavandería." ; cortometraje SubirCarro with descripcion "De un salto, " "me subo al pescante del carro " "y le hago una seña al buhonero, " "que asiente en silencio.^^" "El buhonero desaparece de mi vista " "y vuelve luego con dos mulas que asegura al carro con presteza. " "Después, " "se sube al pescante junto a mí, " "chasquea los labios y salimos del mercado...^^" "Rumbo a la Vía Appia...^^" "Entretanto, mientras el carro avanza lentamente, " "por primera vez en el día tengo tiempo para meditar " "y me pregunto, " "una vez más, " "qué voy a hacer con mi vida adulta, " "que aún no me decido a encarar.^^" "¿Seguir en el barrio por un tiempo?^^" "¿Enrolarme en la Legión, " "para servir al Estado y a la Ciudad?^^" "¿Volver a casa... a qué?^^" "Afortunadamente, " "Roma y su trajín me salvan una vez más de decidir nada... " "pues ya llegamos a la Vía Appia." ; cortometraje LegionarioSaludo1 with descripcion "Saludo al legionario con debida cortesía " "~Os saludo, soldado de la Legión.~^" "~Salud para tí, ciudadano,~ " "responde con calma.^" "~¿Es una guardia tranquila, hoy?~ " "pregunto con interés.^" "~No mucho,~ " "responde aburrido. " "~Hay algunos brutos rondando el Arco Druso, " "pero no se atreven a molestarme.~^^" "Lo miro de arriba a abajo, " "sin disimulo y abiertamente.^" "El soldado ríe. " "~La legión se impone por presencia...~ " "dice con una sonrisa fiera.^^" "Estando como están las cosas en el Arco Druso, " "no me vendría mal su compañía.^^" "~Si no te molesta " "y cuando estés fuera de servicio " "¿me puedes acompañar al Arco Druso?~ le pregunto.^" "~Seguro, ciudadano...~ " "responde afable, " "~pero mi relevo aún no llega. " "Está... ocupado en temas personales.~^" "Progresamos... " "~¿Y se incordiaría si voy a buscarle?~ " "pregunto otra vez.^" "~Es que está de visita en la tumba de los Escipiones,~ " "responde, " "~y puede que se moleste si llegas así sin más.~^^"; cortometraje LegionarioSaludo2 with descripcion "El legionario calla y me mira a los ojos. " "Es una mirada muy parecida a la de Terentia, " "allá en el templo, " "o la mirada que me dió la lavandera " "la primera vez que me vió: " "es como si estuviera sopesando mi persona " "sin apenas conocerme.^^" "Algo bueno debe haber visto, " "porque a continuación me dice " "~Ten esto, ciudadano. " "Entrégale a mi camarada este bastón, " "como santo y seña. " "Si se lo das no tendrás problemas~ " "y me entrega un testigo de madera.^^" "Es nada menos que su bastón de mando. " "Si llego a perderlo, " "este soldado de Roma estará en dificultades... " "y a mí más me vale no encontrarme con él. " "Jamás.^^" "Le doy las gracias y el asiente.^" ; cortometraje CorreoFinalAlternativo2 with descripcion "Descubro, " "de pronto, " "que me he hartado por hoy " "de estar haciendo cosas para otros " "y que quisiera ya mismo " "estar tumbado en mi esterilla, " "en la terraza de la lavandería, " "durmiendo el sueño del olvido.^^" ; cortometraje LegionarioFinal1 with descripcion "El legionario me mira con sospecha, " "mientras le extiendo el paquete de cartas.^^" "~Disculpa, pero en realidad traigo algo más delicado entre manos~ " "le digo con falsa seriedad.^" "El soldado examina las cartas... " "y su rostro cambia a un rictus de odio absoluto.^^" ; cortometraje LegionarioFinal3 with descripcion "Sin pestañear siquiera, " "el legionario espeta ~¡Traidor!~ " "y luego " "hunde " "su " "espada " "en " "mi " "vientre.^^" "Caigo al suelo " "y mientras mi vida se escapa a borbotones de sangre, " "pienso que, " "en verdad, " "la lealtad de un soldado de la Legión " "está " "por " "encima " "de " "simpatías " "políticas..." ; cortometraje Asaltantes with descripcion "De pronto, me veo rodeado por dos tipos fornidos, " "vestidos con ropas oscuras... " "y armados con gruesas manoplas.^^" "Intento correr de vuelta a Roma, " "pero uno de ellos me intercepta " "y caigo al suelo estrepitosamente.^^" "Una patada en la boca me impide gritar " "y entonces siento un fuerte golpe en mi cabez" ; cortometraje RelevoAtacoBaston with descripcion "Lanzo el bastón al rostro del soldado, " "e intento coger el brazo que empuña la espada... " "pero no sirve de nada.^" "El legionario esquiva con facilidad el bastón " ; cortometraje RelevoAtacoAntorcha with descripcion "Lanzo mi antorcha al rostro del soldado, " "e intento coger el brazo que empuña la espada... " "pero no sirve de nada.^" "El legionario esquiva con facilidad la antorcha " ; cortometraje LegionarioFinal2 with descripcion "El legionario me mira con sospecha, " "mientras le extiendo el paquete de cartas.^^" "~Disculpa, pero en realidad traigo algo más delicado entre manos~ " "le digo con falsa seriedad.^" "El recién llegado grita ~¡No!~ " "pero el soldado, ignorándolo, examina las cartas... " "y su rostro cambia a un rictus de odio absoluto.^^" ; cortometraje RelevoFinal with descripcion "El legionario me mira con sospecha, " "mientras le extiendo el paquete de cartas.^^" "~Disculpa, pero en realidad traigo algo más delicado entre manos~ " "le digo con falsa seriedad.^" "El soldado examina las cartas... " "y su rostro cambia a un rictus de odio absoluto.^^" "Sin pestañear siquiera, " "el legionario espeta ~¡Traidor!~ " "y luego " "hunde " "su " "espada " "en " "mi " "vientre.^^" "Caigo al suelo " "y mientras mi vida se escapa a borbotones de sangre, " "pienso que, " "al menos, " "habré satisfecho en parte las ambiciones de mi familia...^^" "...ya que estoy muriendo " "entre " "los " "grandes " "de " "Roma..." ; cortometraje RelevoMata with descripcion "y mi torpe ataque, " "para luego, " "sin pestañear siquiera, " "hundir " "su " "espada " "en " "mi " "vientre.^^" "Caigo al suelo " "y mientras mi vida se escapa a borbotones de sangre, " "pienso que, " "al menos, " "habré satisfecho en parte las ambiciones de mi familia...^^" "...ya que estoy muriendo " "entre " "los " "grandes " "de " "Roma..." ; cortometraje RelevoSoldados with descripcion "Le entrego el bastón.^" "El legionario lo revisa con cuidado, " "y luego, " "a un gesto suyo, " "salimos del hipogeo. " "En la entrada apagamos nuestras teas, " "las dejamos en el muro " "y acto seguido, " "sin mediar palabra, " "caminamos hasta llegar al comienzo de la Vía Appia.^^" "El encuentro entre los camaradas " "es un momento hermoso en su marcial sencillez: " "ambos soldados se saludan formalmente con el brazo en alto, " "para luego, " "siempre en silencio, " "tomarse fraternalmente el antebrazo derecho.^^" "Con un guiño, el legionario me conduce al Arco Druso... " "y nos sentamos a esperar a su sombra.^^" "Mientras la tarde muere lentamente " "algunos curiosos mal encarados se acercan al arco, " "pero basta un vistazo al legionario y se alejan aprisa.^^" "La tarde está decayendo " "cuando por fin aparece alguien que no huye espantado...^" ; cortometraje MensajeroSaludo with descripcion "~Saludos, ciudadano~ me dice, " "mostrando una palma abierta.^" "~Os saludo~ respondo con cortesía. " "~¿Os gusta este lugar?~ pregunto curioso.^" "~No mucho,~ dice un tanto incómodo, " "~pero he de encontrarme con alguien...~^^" "La tarde se acorta y mi sutileza también. " "Qué diablos...^^" "~Yo también debo encontrarme con alguien~, " "le digo como al descuido, " "~y vengo de parte de una matrona de noble familia.~^" "Con visible alivio, " "sonríe y me dice " "~Yo, en cambio, vengo de parte del editor " "de un senador en el exilio...~^" "~Atico,~ le digo.^" "~Terentia,~ responde a su vez.^^" "Estrechamos nuestras manos.^^" "~Dadme la correspondencia,~ me pide, " "~y podremos marcharnos, ciudadano.~^" ; cortometraje CorreoEntregado with descripcion "El mensajero acepta el paquete " "y luego chasquea los dedos. " "De entre las sombras aparecen dos esclavos porteadores, " "con una litera y un caballo con aperos para viaje.^" "Antes de montar, " "el mensajero me hace un gesto hacia la litera, " "diciendo ~Disponed de esta litera: " "sus porteadores os llevaran de regreso con comodidad y seguridad.~^" "Dicho esto, monta con calma " "y antes de partir se despide con ~Dad los respetos de Pomponio Atico " "para Terentia de los Helvi~.^^" "El legionario, " "que no pronuncia palabra " "hasta que el caballo se pierde en la distancia, " "me pregunta socarrón " "~¿Acabo de prestar servicios para la República en mis horas libres?~^" "Sonrío. " "~Al igual que yo, soldado...~^" "El legionario se ríe. " "Dándome una fuerte palmada en la espalda, " "se aleja sin más despedida, " "rumbo al norte, " "con una historia sabrosa para su camarada de relevo...^" ; cortometraje TerentiaFinal1 with descripcion "Entro al templo, " "y el silencio es total.^" "Pese a ello, " "no alcanzo a avanzar unos pasos cuando, " "detrás del altar, " "surge la sacerdotisa.^" "Sin decir palabra, " "me conduce a sus aposentos " "donde nos espera Terentia.^^" "La sacerdotisa nos deja a solas. " "Saludo entonces a la señora con una reverencia leve " "a la que ella responde asintiendo con gravedad.^" "~¿Cumplísteis vuestro cometido?~, pregunta Terentia.^" "~He cumplido, señora~ respondo. " "~El mensajero de Pomponio Atico se aleja a galope de Roma, " "llevando vuestras misivas.~^" "Terentia suspira. " "Su rostro adquiere una expresión dulce " "y la señora mira sus manos antes de volver a hablar en tono resignado. " "~Los eventos que ocurren en Roma y fuera de ella seguirán su curso~, " "dice con tranquilidad, " "~y confío en que mi marido ya pronto podrá volver a ocupar su sitio... " "en la ciudad y junto a mí~.^" "Hace una pausa y me mira a los ojos. " "~Cuando eso ocurra~ prosigue, " "~y acaso vos o vuestra familia " "padezcan del desorden de estos tiempos, " "recordad que contáis con la estima " "de Terentia de los Helvi.~" ; cortometraje TerentiaFinal2 with descripcion "Mientras Terentia exalta mis virtudes romanas " "y los buenos auspicios entre nuestras familias, " "no puedo sino pensar en cuanto tiempo más puedo seguir huyendo:^^" "de mi familia...^^" "de mis responsabilidades ciudadanas...^^" "de esta Roma y su República, " "que se tambalea por mi desidia " "y la de todos los que seguimos así, " "día a día: " "trabajando en esto y aquello, " "creyendo que nuestro modus vivendi es sólo cosa nuestra, " "ciegos a la realidad que Cícero " "y otros como él " "conocen ya demasiado bien:^^" "La vida de Roma es nuestra vida... " "y si nuestra vida depende de nuestros afanes cotidianos, " "lo cierto es que Roma no podrá sobrevivir " "si diariamente la dejamos en manos de otros.^^" "Terentia se levanta. " "Con calma, " "saca de su cuello un medallón " "que me entrega con manos trémulas. " "~Recibid este medallón de Atenea~, " "me dice, " "~como prenda de mi estima " "y en recuerdo de mi esposo, " "Marco Tulio Cícero.~^" "Aturdido, " "atino a agradecer el gesto " "y me despido cortésmente." ; cortometraje TerentiaFinal3 with descripcion "Salgo al foro " "y encamino mis pasos calle arriba, " "rumbo a la lavandería.^^" "El medallón aún está frío en mi pecho, " "y mis remordimientos se acrecientan con la oscuridad. " "Caminando calle arriba, " "pienso una vez más en mi vida adulta " "que aún no me decido a afrontar, " "por más que Roma, " "con todas sus miserias y grandezas, " "me lo esté pidiendo a gritos.^^" "Llego a la lavandería " "en la que ya reina la quietud del ocaso... " "y me río de mis inútiles ansiedades y preocupaciones.^^" "Un viajero del oriente lejano, " "de ojos rasgados y piel amarilla, " "me dijo una vez una gran verdad, " "que me trae consuelo y nuevos bríos: ^^" "~El futuro se vive un día a la vez.~^^" "Sonriendo, " "comienzo a subir las escaleras, " "mientras llamo a gritos a la lavandera:^^" "~¡¡Matronaaaa!! " "¿¡Qué tenemos para la cenaaaa?!...~" ; ! LINEAS DE GRAMATICA ! Definiciones para ayuda Verb 'ayuda' * -> ayuda * topic ->ayuda; [AyudaSub; ZIPI_RunMenuT(ZIPI_Menu1); @erase_window $ffff; JugadorA(localizacion); !"El comando AYUDA aún no ha sido implementado."; ! Pendiente creación MenuZipi ]; ! Definiciones para pistas Verb 'pistas' * -> pistas * topic ->pistas; [PistasSub; ZIPI_RunMenuT(ZIPI_Menu3); @erase_window $ffff; JugadorA(localizacion); ]; ! Definiciones para Texto Animado Verb 'anima' * -> animar; [animarSub; if (velocidad_texto==0){ velocidad_texto=20; "Texto animado ACTIVADO."; } else { velocidad_texto=0; "Texto animado DESACTIVADO."; } ]; ! Extensiones según la localidad para la que fueron originalmente modificados ! Terraza ! Definiciones para Saltar de un sitio Extend 'salta' first * 'por' noun -> SaltarSobre * 'de' noun -> SaltarSobre; Extend 'brinca' first * 'por' noun -> SaltarSobre * 'de' noun -> SaltarSobre; ! Definiciones para Muebles Verb 'acuestate' 'tiendete' 'recuestate' 'tumbate' * 'en' noun -> Meterse * noun -> Meterse; ! Triclinio ! Definiciones para Comer un sitio Extend 'come' first * -> Comer; ! Definiciones para Bajar y Subir escaleras Verb 'desciende' * -> Bajar; Verb 'asciende' * -> Subir; ! Lavandería ! Definiciones para más de un PSI por localidad Extend 'habla' first * creature -> Hablar * 'a' creature -> Hablar * 'con' creature -> Hablar; ! Definicion para Saludar Extend 'saluda' * creature -> Hablar * 'a' creature -> Hablar * 'con' creature -> Hablar; ! Definiciones para salir por ventana Extend 'sal' * 'por' noun -> Meterse; Extend 'salte' * 'por' noun -> Meterse; Extend 'salte' * 'por' noun -> Meterse; Extend 'fuera' * 'por' noun -> Meterse; Extend 'salirse' * 'por' noun -> Meterse; Extend 'salirte' * 'por' noun -> Meterse; ! Plaza ! Definiciones para Beber Extend 'bebe' first * -> Beber * 'de' noun -> Beber; ! Definiciones para Tirar Verb 'arranca' * noun -> Tirar; ! Definiciones para Orinar Verb 'mea' 'micciona' 'orina' 'meate' 'miccionate' 'orinate' * -> orinar * noun -> orinar * 'a//' noun -> orinar * 'en' noun -> orinar; !* 'el' noun -> orinar !* 'la' noun -> orinar [orinarSub; if (uno ofclass PSI) "Un romano no anda orinando sobre los demás..."; else if (Fuente.capacidad < 4) "No tengo ganas en este momento."; else if (uno == 0) "¿Dónde?... Un romano no anda esparciendo como un perro en la calle..."; else { print "¿¡Orinar en "; if (uno==obj_abajo) print "el piso"; else print (el) uno; "?!... No, qué asco..."; } ]; ! Otras acciones metabólicas ! Definiciones para Cagar Verb 'caga' 'defeca' 'descarga' * -> cagar * 'en' noun -> cagar; [cagarSub; if (uno == 0) "¿Dónde?... Un romano no anda obrando como un perro en la calle..."; else "¿¡Ahí?!... No, qué asco..."; ]; ! Definiciones para Vomitar Verb 'vomita' * -> vomitar * 'en' noun -> vomitar; [vomitarSub; if (uno == 0) "¿Dónde?... Además, no estoy en un banquete, ni me siento mal..."; else "¿¡Ahí?!... No, qué asco..."; ]; ! Definiciones para Escupir Verb 'escupe' 'escupir' * -> escupe * 'en' noun -> escupe; [escupeSub; if (uno == 0) "¿Dónde?... No estoy tan enojado, ni me siento mal..."; else "¿¡Ahi?!... No, qué asco..."; ]; ! Definiciones para Bañarse Extend 'lava' * noun noun -> Frotar * noun 'con' / 'en' noun -> Frotar; Verb 'bana' !'banarte' 'banarme' * -> Frotar * noun -> Frotar * noun noun -> Frotar * noun 'con' / 'en' noun -> Frotar; ! Definiciones para Jugar Verb 'juega' 'juga' * -> jugar * noun -> jugar * 'con' noun -> jugar; [JugarSub; if (uno == 0) "¿Jugar solo?... Pues que aburrido..."; else "¿¡Con eso?!... Mejor que no..."; ]; ! Callejon ! Definiciones para Atacar Extend 'ataca' * noun held -> Atacar * noun 'con' held -> Atacar * 'a//' noun -> Atacar * 'a//' noun held -> Atacar * 'a//' noun 'con' held -> Atacar; Extend 'golpea' first * noun -> Tocar * noun noun -> Tocar * noun 'en' noun -> Tocar * noun 'con' noun -> Tocar * noun 'contra' noun -> Tocar * 'a//' noun noun -> Tocar * 'a//' noun 'con' noun -> Tocar; ! Mercado ! Definiciones para Comprar Extend 'compra' first * -> Comprar * 'a//' noun -> Comprar * 'a//' creature -> Comprar * 'en' creature -> Comprar * 'en' noun -> Comprar; ! Definiciones para Abrir Verb 'libera' * noun -> Abrir; ! Definiciones para Vender Verb 'vende' * -> vender * noun -> vender * 'en' noun -> vender * noun 'a//' creature -> vender * 'a//' creature -> vender; Extend 'cambia' first * -> vender * noun -> vender * noun 'a//' creature -> vender * 'a//' creature -> vender; [VenderSub; if (uno == 0) "¿Vender qué?... ¿A quién?..."; else if (localizacion==Mercado) { if (otro == 0) { print "¿A quién vendo "; print (el) uno; "?"; } else "No parece querer comprar nada..."; } else { print "No es sitio este para transacciones, mucho menos para vender "; print (el) uno; if (otro~=0) print (al) otro; "..."; } ]; ! Definciones para Robar Verb 'roba' 'robale' * noun -> Coger * noun 'a//' creature -> Coger * 'a//' creature -> Quitar; ! Definiciones para Levantar Verb 'levanta' 'repara' 'encaja' * noun -> Coger; ! Dwefiniciones para Apoyar Verb 'apoya' * multiexcept 'en' noun -> PonerSobre * multiexcept 'sobre' noun -> PonerSobre * 'a//' creature 'en' noun -> PonerSobre * 'a//' creature 'sobre' noun -> PonerSobre * multiexcept 'encima' 'de' noun -> PonerSobre * 'a//' creature 'encima' 'de' noun -> PonerSobre; ! Definiciones para Montar Verb 'monta' * noun -> Subir * 'en' noun -> Subir; ! Via Appia ! Definiciones para lectura Extend 'lee' first * legible -> Leer; [ LeerSub; <>; ]; ! Arco Druso ! Definiciones para Pasar Bajo Extend 'pasa' * 'bajo' noun -> Meterse; ! Tumba ! Definciones para Quemar Extend 'enciende' * noun 'con' held -> Quemar; Extend 'prende' * noun 'con' held -> Quemar;