How to best implement dialog?

Here is how I currently implement dialog but it is a pain and not friendly(see the joined picture of what happens even with a simple dialog).

say "test1" then
say "text2" then
wait 3 then
say "text3" then
say "text4"
end
end
end
end

Is there a better way to do it, and especially for branching dialogs using "ASK"?

Found some kind of solution in another thread :slight_smile:

I will update it if I can make it a full fledge dialogue system.

Another option could be to use a small handful of say boxes and break them up with special characters.
\n to start a new line
\f to start a new page.

Thank you but this won't work for the following reasons:

  • the code will be mainly composed of super long lines that need horizontal scroll to be maintained and this is precisely what I would like to avoid (since you can't use line breaks for readability like in traditional programming languages)
  • impossible to set display position and wait time by message, as well as displaying the speaker's name (which need to be processed by LABEL and changed ouside of the say statement)
  • may not help much with ASK either