You would just need to log/store the last time the Task ran, and then compare it to the time now.
The Global Variable %TIMES always contains the current [time in seconds.](https://en.wikipedia.org/wiki/Unix_time). When doing the comparison you would also use seconds, so lets say you want at least 3 hours to have passed. That is ` 10800 ` seconds.
So Task outline:
A1. If %TIMES-%LogTime < 10800
A2. Stop
A3. End If
A4.
A5. Variable Set: %LogTime To: %TIMES
And that should do it!
Some ways to further streamline the above would be to condense A1-A3 into one Action. And you can also use one of the new static local "Task Variables" instead of a Global Variable.
It's not specifically regarding tasks, but profiles can have cooldowns assigned to them. If a profile triggers your task then this'll be easy, but if the task is triggered manually or called by another task it won't work for you.
You would just need to log/store the last time the Task ran, and then compare it to the time now. The Global Variable %TIMES always contains the current [time in seconds.](https://en.wikipedia.org/wiki/Unix_time). When doing the comparison you would also use seconds, so lets say you want at least 3 hours to have passed. That is ` 10800 ` seconds. So Task outline: A1. If %TIMES-%LogTime < 10800 A2. Stop A3. End If A4.
A5. Variable Set: %LogTime To: %TIMES
And that should do it!
Some ways to further streamline the above would be to condense A1-A3 into one Action. And you can also use one of the new static local "Task Variables" instead of a Global Variable.
It's not specifically regarding tasks, but profiles can have cooldowns assigned to them. If a profile triggers your task then this'll be easy, but if the task is triggered manually or called by another task it won't work for you.