data/manual/dialogos/index.json
{
"content": "<h1 id=\"dialogos\">Di\u00e1logos</h1>\n<p>Para contar una historia dentro de un juego\npodr\u00edas hacer que los personajes conversen\nentre s\u00ed.</p>\n<p>Esto es muy habitual en un genero de videojuego\nllamado aventuras gr\u00e1ficas.</p>\n<h2 id=\"mensajes-de-dialogo\">Mensajes de dialogo</h2>\n<p>Para hacer que un personaje emita un mensaje sencillo\npuedes usar el m\u00e9todo <code>decir</code>:</p>\n<pre><code class=\"python\">actor = pilas.actores.Mono()\nactor.decir("Eh!, ahora puedo hablar...")\n</code></pre>\n\n<p>Esto har\u00e1 que el personaje muestre un globo similar al\nde las historietas con las frases que has colocado.</p>\n<p><img alt=\"\" src=\"../imagenes/dialogos/decir.jpg\" /></p>\n<h2 id=\"conversaciones\">Conversaciones</h2>\n<p>Los mensajes de dialogo se pueden usar para que dos\no mas actores puedan conversar entre s\u00ed. Esto es \u00fatil\npara contar una historia, ya que le permites al usuario\nir viendo paso a paso lo que se dicen los actores entre\ns\u00ed.</p>\n<p>Para crear una conversaci\u00f3n entre actores tienes que\ncrear un objeto de la clase <code>Dialogo</code>, luego\nindicarle la secuencia de conversaci\u00f3n y por \u00faltimo\niniciar el dialogo:</p>\n<pre><code class=\"python\">dialogo = pilas.actores.Dialogo()\n\ndialogo.decir(mono, "Hola, como estas?")\ndialogo.decir(otro_mono, "Perfecto!!, gracias...")\ndialogo.decir(mono, "genial...")\n\ndialogo.comenzar()\n</code></pre>\n\n<p>Ahora cuando ejecutes este programa, solamente aparecer\u00e1\nel primer mensaje <code>\"Hola, c\u00f3mo estas?\"</code> y solo cuando el\nusuario haga click con el mouse avanzar\u00e1.</p>\n<p>Ten en cuenta que el m\u00e9todo <code>decir</code> funciona como una\ncola de mensajes, es decir, si llamas a <code>decir</code> el mensaje\nno aparecer\u00e1 inmediatamente. El mensaje aparecer\u00e1 cuando\ncorresponda seg\u00fan el orden de la conversaci\u00f3n que se siga.</p>\n<p>Si quieres que un bot\u00f3n accione un mensaje y lo haga\nde manera inmediata tendr\u00edas que usar un m\u00e9todo c\u00f3mo <code>dialogo.decir_inmediatamente</code>.</p>\n<h2 id=\"preguntas\">Preguntas</h2>\n<p>Para desarrollar conversaciones con preguntas tambi\u00e9n\npuedes usar a los di\u00e1logos. Lo \u00fanico diferente es que las\npreguntas traer\u00e1n asociada una repuesta del usuario, y para\nmanejar el resultado tienes que escribir una funci\u00f3n.</p>\n<p>La funci\u00f3n se invocar\u00e1 cuando el usuario haga click en\nalguna de las opciones. Y cuando se llame la funci\u00f3n\nse pasar\u00e1 la respuesta que ha elegido como una cadena\nde texto.</p>\n<p>Aqu\u00ed tienes una ejemplo de una pregunta con 3 respuestas. Cuando\nel usuario elija una repuesta el personaje volver\u00e1 a\ndecirlo:</p>\n<pre><code class=\"python\">def cuando_responde_color_favorito(respuesta):\n dialogo.decir(mono, "he dicho: " + respuesta)\n\ndialogo.elegir(mono, "Mi color favorito es el...", ["rojo", "verde", "azul"], cuando_responde_color_favorito)\n</code></pre>\n\n<p><img alt=\"\" src=\"../imagenes/dialogos/pregunta.jpg\" /></p>\n",
"url": "/dialogos/",
"language": "en",
"title": "Di\u00e1logos"
}