It looks like you're new here. If you want to get involved, click one of these buttons!
<!-- $time is time of day, in minutes, so 1200 is eight in the evening (since it's 1200 minutes since midnight). Before you ask, I already have a modular function that resets the clock at midnight so I don't have ridiculous times like "127:33". --> |wake>[Wake up] <!-- This line runs as the user is leaving --> (click: ?wake)[(set: $time to it + (round: (time / 100)))(goto: (history:)'s last)]
Comments
But to answer your question, Harlowe has a timer macro named (live:) which you could use to update your $time variable.
Ex. If you want something to happen roughly every minute you would do the following: .... I said roughly every minute because it may take slightly longer that the time delay you supplied to fire because the program may be doing something else at the time of the firing like switching between passages, updating the screen, etc...
By the way, one of my favorite interactive fictions, A Dark Room, is heavily dependent on the passage of time, so it's not universally evil.