It looks like you're new here. If you want to get involved, click one of these buttons!
//Sent by// $name: "''Fuck off, why would you go and tell mom AND dad I didn't do shit ?!''" (live:1s)[ (if: time >=2s and time <4s)[$nameC is writing...]\ (if: time >=4s)[ //Sent by// $nameC: $c["''Seriously ? Are you talking to me?!''"] ]\ (if: time >=5s and time <8s)[$nameC is writing...]\ (if: time >= 8s)[ //Sent by// $nameC: $c["''I told them BECAUSE you didn't do shit ffs!''"] ]\ (if: time >=9s and time <12s)[$nameC is writing...]\ (if: time >= 12s)[ //Sent by// $nameC: $c["''You didn't do ANYTHING !''"] ]\ (if: time >15s)[(stop:)]]\
(set: $c to (color: "#D87093"))\
Comments
1. Instead of re-displaying the conversation each time the (live:) macro's timer fires, you could use a combination of a named hook and the (append:) macro to update a section of the page.
2. Because your (if:) macro conditions are mutually exclusive you should use an (else-if:) macro for each of the conditions after the first.
3. I personally don't like relying on the value returned by the time keyword because the (live:) macro's timer does not always fire on exact intervals due to the additional delay introduced by the processing of the content of it's associated hook.
eg. If you have a (live: 1s) timer and the content of the associated hook takes 0.8 seconds to process then the timing of the events may look something like: 1s, 2.8s, 4.6s, 6.4s, etc...
Because of this I suggest using a variable to track how many times the timer has fired and base your conditional statements on that variable instead.
The following is a modified version of your example, I have added the assignment of $name and $nameC for testing purposes.