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 4
Pruébalo
44 KB


Meta:   Crea frases a la medida.


Screenshot


Vocabulario:   empty?, se (sentence), stopall

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]
text1, ct insert "Hola, insert char 32 insert answer insert "! showtext
question (se answer [, 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 [¿Qué color te gusta más: rojo, amarillo, naranja, verde, azul, o violeta?]
if empty? answer [stop]
changecolor
question (se [ A mi también me gusta el] answer [.   ¿Qué deporte te gusta más: football, baseball, basketball, o soccer?] )
insist
announce (se [¡A mi también me gusta más el] answer [! ¡Mira cómo me convierto en una pelota!] )
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

Necesitamos una manera de detener las preguntas si el usuario hace clic en cancel o no responde.  

  1. Después de cada pregunta en el procedimiento conversation, usa el comando:
    if empty? answer [stop]
    para revisar la respuesta y detener el procedimiento si no hubo respuesta.

  2. Usa se ("sentence" frase) para incluir una respuesta en una pregunta siguiente o en un anuncio.   Ponemos paréntesis ( ) alrededor de se, la respuesta, y cualquier otra cosa que desees incluir.

  3. En el procedimiento insist, si el usuario hace clic en cancel o no responde no solamente deseamos detener el procedimiento insist, también deseamos detener el procedimiento conversation.   Necesitamos detener todo.   Por esto, necesitamos usar stopall en este comando:
    if empty? answer [stopall]




¿Qué pasa si?
¿Qué pasa si cambias esta línea: if empty? answer [stopall] por esto:

if empty? answer [announce "Good-bye! stopall]


Desafío
¿Puedes escribir tus propias preguntas que incluyan las respuestas del usuario en ellas?

Si el usuario no responde una pregunta, ¿puedes hacer que la criaturita diga o haga algo gracioso antes de detener la conversación?




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