Ok I found a method :
It uses 2 texts objects, "TextSample" which contains the full text, and "Dialog" which display the text character by character;
"Dialog" uses two variables : TypeSpeed, which is the typewritting speed, and TypeLen, which is used to check the progression of the typewritter;
In this example on Enter pressed, it repeats "the number of characters in TextSample" times this action:
Wait Dialog.TimeSpeed x Loopindex seconds, set Dialog text to "Self.TypeLen" numbers of characters from TextSample starting from the left, then add 1 to TypeLen, so during the first loop it will return the first character, second loop, two characters, etc;
The sub event check if the last character from the right in Dialog is a space or not, if not, it will play a sound;
Btw you can replace TextSample by a global variable to access it from anywhere in your project, and also give to Dialog a boolean to confirm it is currently typing to avoid any trigger problem