Paso 7: Carga de cadenas desde archivos de texto
Vamos a empezar con un simple saludo. Cargando un saludo al azar de un archivo de texto podemos tener un número teóricamente ilimitado de maneras en que el árbol puede responder a un simple 'Hola'. Nuestro no es ilimitado, pero puedes poner tantos como quieras.
Así permite empezar por añadir otra función a nuestro dibujo. Una vez más abajo debajo de todo y entrar en el siguiente.
//generic obtener respuesta... cargas una línea del archivovoid getAnswer(String fileName) {}
Líneas de cadena [] = loadStrings (fileName + ".txt");
Índice de int = int(random(lines.length)); igual int(random(4))
println(Lines[index]); imprime una de las líneas de greetings.txt
mensaje = líneas [índice];
Respond(Message);
}
Esta simple función poco nos permitirá cargar una línea al azar de un archivo de texto específico, que especificamos cuando hacemos una llamada a la función.
Antes de que podemos usarlo, necesitamos crear un archivo de texto y ponerlo en nuestra carpeta de dibujo.
Abrir Bloc de notas y cree un nuevo archivo. Escriba un montón de saludos que gustaría que tu robot responder, cada uno seguido por una línea de retorno. Así.
Hola
Hey
Hola
Ho Ho Ho
Hola feliz Navidad!
Oh Hola
Poner tantas entradas chifladas como usted tiene gusto. Mina mantuve bastante mansos, pero no dude en dar a su árbol de algún personaje. Algunas veces puede que desee utilizar su propio conocimiento de cómo se ejecuta el programa e incluir unos signos de exclamación para un parpadeo o una pausa. Una vez que tienes unas entradas, guardar en la misma carpeta como su bosquejo y darle un nombre que pueda recordar. Llamé a mi "greetings.txt"
Ahora llamamos a la función especifica de nuestro archivo de texto cuando queremos un saludo. Añadir este si declaración a su código con los demás.
si (s.equals ("árbol de Hola")) {}
getAnswer("greetings");
} Usando la misma función, fácilmente podemos agregar otras funciones. Crear el archivo de texto para los robots responces, agregar las palabras necesarias en el archivo .gram y llamar a la función getAnswer(), especificando el archivo de texto correcto.
Vamos a añadir una respuesta para cuando el árbol escucha las palabras "Feliz Navidad" y también "gracias", ya que me encuentro gracias de todas formas el árbol. ¿Buenos hábitos son difíciles?
Así que primero nos azote de dos archivos de texto. Estoy llamando a la primera "christmas.txt" y llenar con mensajes de Navidad alegre.
¡Feliz Navidad!
¡Felices Fiestas!
Mira cómo alegre mira mis pelotas
Bling! Soy un árbol de Navidad
Los otros estoy llamando "thanks.txt" y llena de gracias.
Gracias por hacerme sentir amado
De nada
Mi objetivo por favor
Es una cosa de Navidad
Si yo no estaba atascado en este pote sería besarte
Bésame
Estoy vivo
No hay problema
Ahora sólo tiene que añadir a su vocabulario en el archivo tree.gram, como esta,
públicas < vocabulario > = (Hola < dirección > | Hola < dirección > | gracias | feliz Navidad) *; Si (s.equals ("gracias")) {}
y añadir las llamadas a la getAnswer() a su reconocimiento del manejo de código.
si (s.equals ("Feliz Navidad")) {}
getAnswer("christmas");
}
getAnswer("thanks");
}
Eso es todo allí está a él. Vaya por delante, guardar el archivo y darle una oportunidad. Su árbol de Navidad de Animatronic debe convertir en un parlanchín poco regular. Mi árbol se está convirtiendo en mi plástico pal que es divertido estar con.