Como puedo crear una mision o una escena donde haya un dialogo de personajes

Como puedo crear una mision o una escena donde haya un dialogo de personajes

Hola @Dyron_D, para hacer diálogos podrías usar la función decir de los actores. Esta función espera una cadena de texto como argumento y hace que el personaje pronuncie la frase como si fuera una caricatura.

Por ejemplo, si tenes un actor y llamas a este código:

this.decir("Hola!");

El resultado va a ser como este:

image

Ahora, para hacer una conversación, tal vez te conviene escribir el código en un tercer actor, así pones el ida y vuelta de los textos en un solo lugar.

Te dejo un ejemplo:

Tendrías que pulsar el botón “Dialogar” para que los dialogos avancen:

1 Like

Hola!

Quería preguntar sobre este tema como introducir texto multilinea. Vi un ejemplo en
Crear dialogos extensos- pero poner el texto entre tres """
pej

dialogo.decir(mono, """Hola, este
es un texto
con muchas
lineas
...""")

no me estaría funcionando. Es una cuestión de la versión ? Como podría ponerlo?
(probé usando /n pero me agrega una coma no deseada “,”

Gracias! Saludos!

Juan

Hola @Juan_D_Adamo, no estoy seguro, pero creo que el código que usas es para la versión python (1.algo) de pilas.

Yo creo que lo mejor para hacer diálogos largos es escribir en el Paint o similar lo que quieras que se diga, luego cargarlo como un actor más, marcarlo como inactivo y hacer que se clone en el lugar y momento que deba.

Si, es verdad, me olvidé de aclarar que la solución propuesta sirve en pilas 1 y como trabajo en pilas 2 no me está funcionando. Podría hacerlo si con actores texto imagen, pero quería ver si podría aprovechar este comando “decir”. Gracias!!

Hola @Juan_D_Adamo!!, para hacer textos multi-lineas podés incluir el simbolo especial ‘\n’ para simular el ‘salto de linea’ así:

this.decir("¡Hola!\neste es un texto\nmultilinea");

image

o bien, otra opción, es escribir el mensaje usando tildes invertidas como mencionan aquí: Plantillas literales (plantillas de cadenas) - JavaScript | MDN

Así te debería quedar en el código:

this.decir(`¡Hola!
este es un texto
multilinea`);

Lo malo de estas comillas invertidas es que por ahí con el identado de código te aparezcan varios “espacios” dentro del mensaje.

Igual, concuerdo con lo que dice @lukeitor, si tu dialogo requiere un tipo de letra especial o algún tipo de decoración por ahí te conviene hacerlo aparecer como una imagen. La función decir es algo limitada.

2 Likes