If you do it with harlowe, you can use the (live:[reload time]) macro. I'm bad at explaining, but here's a code exampfe of which I hope it'll help:
(live:1s)[
(set: $helloTimer to $helloTimer + 1)
(if: $helloTimer is 3 or $helloTimer > 3)[Line 1]
(if: $helloTimer is 6 or $helloTimer > 6)[Line 2]
(if: $helloTimer is 9 or $helloTimer > 9)[Line 3]
(if: $helloTimer is 21)[(stop:)]]]}
THat probably isn't the most elegant way to answer it, but it worked for me.
It doesn't fade though, it just appears.