For the first one, I use broadcast (skip) and wait block under the hide and my whole text box engine.
For the second one, I use broadcast (skip) under the hide and my whole text box engine.
So basically, the broadcast skip is to set the counter to 1 in order to make the clone delete itself and make new text.
I got inspired from seeing another scratch program of DDLC fanmade game. I used to use stamp to make the text engine, but unfortunately it can't be placed in front of a sprite, so I can only rely to clones.
Here's the link to my scratch project: https://scratch.mit.edu/projects/453547552/.
And the reference project: https://scratch.mit.edu/projects/393632602/ (most of the code is in text_story).