099 This room's state bits: 099 Bit 0 (1): 1 - Araña tirada , 0 - Araña no tirada 099 Bit 1 (2): 1 - Viste los rincones , 0 - No los viste 099 099 001 000003 003 0 004 El vestíbulo principal 010 0&0&Te encuentras en una amplia estancia de alto techo, se trata sin duda del vestíbulo principal de la casa que da acceso a sus diferentes estancias. La sala tiene una altura de dos pisos, y está iluminada por la tenue luz del sol, que entra por dos ventanas situadas en la pared sur y dos en la pared norte, todas ellas a la altura del segundo piso; y permite ver el polvo flotando en el aire. &0&2&Pero la luz no llega a los rincones, donde podría cobijarse algún terrible monstruo bajo las sombras... &2&2&Sólo en los rincones, habitados de escarabajos, encuentra refugio la oscuridad. &0&0&\n Hacia el norte, una escalinata, que debió de ser impresionante en su época, conduce al pasillo que vertebra el piso superior. Al sur está el hueco de puerta cubierto de telarañas que lleva a la entrada. En la pared oeste hay una puerta pintada de blanco, bastante sucia, y en la pared este hay una puerta de dos hojas. El suelo es de baldosas que siguen un patrón ajedrezado,&0&1& y no hay nada más en él que una buena capa de polvo.&1&1& y está lleno de trocitos de cristal pertenecientes a la lámpara de araña que sucumbió a tu certera y épica pedrada.&0&0& A los lados de la escalinata que conduce al pasillo del piso superior hay grandes tapices.&0&1& Una enorme lámpara de araña cuelga del techo. 011 0004$0&0&Subes por la escalinata. Los trozos de pintura del suelo crujen a tu paso.$30$0$0$0@0002$0&0&Apartando alguna telaraña, te diriges al zaguán.$30$0$0$0@0001$0&0&La puerta blanca está cerrada.$30$0$item33$0@0006$0&0&Avanzas cuidadosamente hacia la puerta, mirando hacia los lados.$30$0$item29$0@NO@NE@SO@SE@0004$0&0&Subes por la escalinata. Los trozos de pintura del suelo crujen a tu paso.$30$0$0$0@AB 012 0002$0&0&Apartando alguna telaraña, te diriges al zaguán.$30$fuera&zaguán&hueco$0$0$0@0004$0&0&Subes por la escalinata. Los trozos de pintura del suelo crujen a tu paso.$30$escalinata&escaleras&escalera&pasillo$0$0$0@0006$0&0&Avanzas cuidadosamente hacia la puerta, mirando hacia los lados.$30$puerta de dos hojas&puerta este$0$item29$0@0001$0&0&La puerta blanca está cerrada.$30$puerta blanca&puerta oeste$0$item33$0@0@0 099 020 000007$000030 020 000029$000033 030 escalinata$escalera$escaleras$escalones$Es una magnífica escalinata de mármol, como sólo se ven en grandes edificios. Recta y de un solo tramo, los primeros dos escalones son más anchos que el resto y de bordes redondeados. Las barandillas a ambos lados continúan arriba, separando el pasillo de la estancia. Unas marcas bien visibles indican que en otro tiempo había una alfombra sobre la escalera; pero ahora sólo hay polvo y pintura caída del techo.@techo$Una gran lámpara al estilo de las arañas antiguas cuelga del techo. Dado el estado general de la casa, parece un milagro que todavía no se haya caído.@araña$lámpara$lampara$0&1&Es una gran araña que cuelga de una cadena metálica fijada al techo, y no funciona con velas, sino con electricidad. No parece estar en muy mal estado. Te la llevarías a casa; pero, aparte de que tendrías problemas para sacarla por las puertas y necesitarías un camión para transportarla, en una casa normal llegaría del techo al suelo. En el interior de la araña, ves algo que te llama la atención, parece un objeto metálico...&1&1&De la magnífica araña sólo quedan pequeños trozos de vidrio esparcidos por el suelo y, en el techo, la cadena de la que colgaba. Te sientes un poco mal por lo que hiciste.@objeto$metálico$metalico$Hay algo colgado o enganchado dentro de la araña; pero no hay manera de ver lo que puede ser.@suelo$baldosa$baldosas$No ves nada en el suelo aparte de polvo.@polvo$Es una pena que no se cotice, te harías rico.@barandilla$barandillas$Las barandillas están en muy mal estado. Mejor no confiar mucho en ellas.@ventanas$ventanales$ventana$ventanal$Son grandes ventanas situadas a la altura del segundo piso. Las de la pared sur son inaccesibles, y tendrías que subir para mirar por las de la pared norte.@hueco$No queda rastro alguno de la puerta que conducía al pequeño zaguán.@cristal$cristales$trocitos$1&1&Trocitos de cristal procedentes de la lámpara que colgaba del techo antes de que la derribaras. Mejor no tocarlos, tienen pinta de cortar.&0&1&¿Qué trocitos?@rincones$rincon$rincón$esquina$esquinas$En los rincones oscuros no hay nada.@escarabajo$2&2&El amenazador escarabajo ya se ha ido a algún lugar lejos de donde puedas verlo.@tapices$0&0&Los tapices están tan deteriorados que es imposible adivinar qué representaban, sólo está claro que el color predominante era el rojo. 080 .CODE command_lanzar: nop command_tirar: nop command_arrojar: nop nop ; load stone's ID into r0, lamp's ID into r1 loadi $r0, 30000001 loadi $r1, 30000002 load $Obj, args mov $a0, $r0 mov $a1, $r1 function referstoentities loadi $r2, true beq $v0, $r2, aversitienelapiedra noesloquequeremos: loadi $a0, ¿Lanzar qué contra qué? function newline function escribir function newline end aversitienelapiedra: load $Obj, player mov $a0, $r0 function hasitem beq $v0, $r2, tienelapiedra notienelapiedra: loadi $a0, ¿Lanzar qué contra qué? function newline function escribir function newline end tienelapiedra: function removeitem load $Obj, this function giveitem loadi $a0, Lanzas la piedra contra la araña; pero fallas. function newline function escribir function newline end 081 084 /** parseCommand ( Player p , String verb , String arguments ) parsea comandos. Comando lanzar para piedra y lámpara. */ void parseCommand ( Player p , String verb , String arguments ) { if ( verb.equalsIgnoreCase("lanzar") || verb.equalsIgnoreCase("tirar") || verb.equalsIgnoreCase("arrojar") ) { piedra = world.getObject( 30000001 ); lampara = world.getObject( 30000002 ); if ( ParserMethods.refersToEntities ( arguments , piedra , lampara , false , false ) ) { if ( p.hasItem ( piedra ) ) { p.removeItem ( piedra ); obj.addItem ( piedra ); p.escribir("\nLanzas la piedra contra la araña; pero fallas.\n"); //source("end.bsh"); end(); } else { p.escribir("\n¿Lanzar qué contra qué?\n"); //source("end.bsh"); end(); } } else { p.escribir("\n¿Lanzar qué contra qué?\n"); //source("end.bsh"); end(); } } else if ( verb.equalsIgnoreCase("mirar") ) { if ( ( arguments.indexOf( "rinc" ) >= 0 ) || ( arguments.indexOf ( "esquina" ) >= 0 ) ) { //extra description; pero que cambia el estado if ( ( obj.getState() & 2 ) == 0 ) { //aún no has mirado los rincones p.escribirAccion("\nMirando hacia una de las esquinas, te parece descubrir un movimiento... Cuidadosamente, y bien alerta, te diriges hacia ahí, temeroso de lo que te puedas encontrar; pero decidido a morir como un hombre...\n\n"); p.waitKeyPress(); p.escribirDescripcion("Lo que se movía sale a la luz, y ahora lo ves claro... ¡era un simple escarabajo!\n"); obj.setNewState ( obj.getState() | 2 , 0 ); } } } //else, just continue parsing using normal methods! } 085