Origen
Carpetas de Proyectos
Recursos de Profesores
Recursos de Estudiantes
En INGLÉS
¿Cómo hago?
Lectura
Foro MW
Mapa del Sitio
Búsqueda
Equipo

criaturita 1 2 3 4 5 6 7
Charla con Criaturita 5
Pruébalo
44 KB


Meta:   Haz que la conversación sea más adaptable usando variables.


Screenshot


Vocabulario:   make

Código
Figuras
Mapa del Proyecto

to startup
set "question "pos [-200 140]
set "announce "pos [-200 140]
text1, ct hidetext
setbg 0
t1, setsh "critter
conversation
end

to conversation
question [¡Hola! ¿Deseas hablar? (Teclea SI o NO.)]
if answer = "no [stop]
if empty? answer [stop]
question [¿Cuál es tu nombre?]
if empty? answer [stop]
make "yourname answer
text1, ct insert "Hola, insert char 32 insert :yourname insert "! showtext
question (se :yourname [, Yo no tengo nombre.   Por favor dame un nombre.] )
if empty? answer [stop]
text1, ct insert [Yo soy] insert char 32 insert answer insert "!
question (se :yourname [, ¿Qué color te gusta más: rojo, amarillo, naranja, verde, azul, o violeta?] )
if empty? answer [stop]
changecolor
question (se [ Me gusta el] answer [también, ] :yourname [.   ¿Qué deporte te gusta más: football, baseball, basketball, o soccer?] )
insist
announce (se [¡También me gusta más el] answer [! ¡Mira cómo me convierto en una pelota,] :yourname "! )
setsh answer
text1, ct insert [Soy una pelota de] insert char 32 insert answer insert "!
end

to changecolor
if answer = "rojo [setbg "red]
if answer = "amarillo [setbg "yellow]
if answer = "naranja [setbg "orange]
if answer = "verde [setbg "green]
if answer = "azul [setbg "blue]
if answer = "violeta [setbg "violet]
end

to insist
if member? answer [basketball baseball football soccer] [stop]
if empty? answer [stopall]
question [¿Qué deporte te gusta más: football, baseball, basketball, o soccer? (Escribe con cuidado)]
insist
end
to Let's_talk_again!
startup
end



Notas

Supón que deseamos que el programa recuerde el nombre del usuario durante toda la conversación.   Necesitamos una manera para guardad este nombre, porque answer sólo recuerda la última respuesta.  

  1. Podemos guardar una respuesta creando una variable usando make.   En este caso, el comando:
    make "yourname answer
    crea una variable llamada yourname (tu nombre) y le da el valor de la respuesta más reciente.   (Asegúrate de poner comillas antes del nombre de la variable).   Ahora el computador recordará la respuesta tanto como queramos.   Siempre que queramos usar ese nombre, podemos escribir :yourname y el nombre del usuario será dado.   (Asegúrate de poner los dos puntos :).




¿Qué pasa si?
Intenta dar a tu variable un nombre diferente en lugar de yourname.   ¿Funciona todavía?


Desafío
Crea una conversación de preguntas y respuestas en la cual incluyas el nombre del usuario en, por lo menos, tres preguntas, al inicio, en el medio, y al final de cada pregunta.




© copyright 2001 - 2008  OpenWorld Learning.   All rights reserved.